0

画像処理でUNDOアクションを実行するにはどうすればよいですか?画像の位置(サイズ変更、回転、3D変換)を変更してから[元に戻す]ボタンをクリックすると、画像の以前の状態が必要になります。実行する方法?サンプルのソースコードを提供するか、これについていくつかのアイデアを提供してください。前もって感謝します。

4

2 に答える 2

0

元に戻すことができる操作を実装する一般的な方法は、すべての操作の後に状態を保存することです。したがって、この場合、

  1. 画像のすべてのバージョンを保存します。これはメモリに関して非常に非効率的です。
  2. すべての変換ステップを保存します。1つの変換を元に戻す場合は、変換の逆を画像に適用するだけです。これは推奨されるアプローチです。
于 2012-09-21T11:26:08.627 に答える
0

NSDictionaryすべての提供で作るeffects/またはあなたと一緒に適用することができますeditor

  1. に保存NSDictionary_NSMutableArray[lastEffectArray addObject:effectDictionary];
  2. ユーザーがUNDOを押すと、withpaireffectDictionaryからエフェクトをlastEffectArrayロードして適用しkey/valueます。ここでは、2つのことができます。

または、他の配列へのREDOアクションのためにRemove最後のeffectDictionaryオブジェクトを作成できます。lastEffectArrayAdd

effectDictionaryで利用または適用できるすべての効果を保存する必要がありますeditor。使いやすい関数を作成して、エフェクトを適用/削除できます!!!

[release]最後に、配列と辞書のすべての効果を忘れないでください。

注、これは解決策ではありませんが、独自の革新的なロジックを使用して実装できます。

于 2012-09-21T11:41:06.273 に答える