Illustrator CS3から新たにアンドゥ、リドゥ機能がスクリプトから制御できるようになりました。不思議な事にPhotoshopには標準でヒストリーパレットがあり、任意のヒストリーに戻せるのに対して、Illustrator CS3ではヒストリーパレットもなく、手作業またはバッチで一定回数アンドゥを繰り返して元に戻す、といった作業をしなければなりません。
また、機能が使えるようになったと言ってもヒストリー機能はないので、何回アンドゥしたのかが全く不明です。
20回前に戻したいなら
for(i=0;i <20; i++) app.undo();
のスクリプトで元に戻すことができます。
戻す時にapp.redraw()を使うと、描画過程を表示してくれます。
for(i=0;i <20; i++) { app.undo(); app.redraw(); }
app.undo()の代わりにapp.redo()にすると、やり直してくれます。
さて、このアンドゥ機能を使ってヒストリーアニメーションを作成することができます。Photoshopでは以前にやりましたが、IllustratorではCS3しかできません。また、Illustrator CS3の場合、メモリがあれば無制限に取り消しが可能になっています。
以下のスクリプトは99回までの取り消しを行ない、個別にファイルとして書き出します。これをAfterEffectsなどを使って表示すればIllustratorによるヒストリーアニメーションを作成することができます。