スクリプトが書ける。
ラスタ画像を扱う際、「リンク」と「埋め込み」を意識しなくてはいけない。画像の情報が、Illustratorのファイルの中に無いのが前者で有るのが後者。
この時画像の情報はIllustratorファイルの中に存在せず、代わりに場所だけ記憶しておき、必要に応じ参照する。ファイルサイズが抑えられるメリットがあるが、画像の場所を変えた時など画像を参照できない状況にあると、Illustratorファイルをいつも通り開くことはできない。でも「見つからないので置き換えるか」と聞いてくるので、そこで新しい場所を指定してやればOK。移動前、移動後共に画像がひとつのディレクトリにまとまっていれば、画像をひとつ正しく置き換えてやれば後の画像は一気に新しい場所のリンクへと自動的に置き換わる。
この時画像の情報はIllustratorファイルの中に存在するため、元画像の場所を移動させても問題ない。しかしファイルサイズは膨れ上がる。
あるディレクトリ中の全てのファイルを配置するスクリプトを書いてみた。
if (documents.length == 0) { documents.add(); } myImgDir = "/e/mypath/to/img"; ! 画像ファイルのあるディレクトリ myFolder = new Folder(myImgDir); myImgs = myFolder.getFiles() for (i=0;i<myImgs.length;i++) { theFile = new File(myImgDir + myImgs[i].name) theRasterArt = activeDocument.rasterItems.add(); theRasterArt.file = theFile; theRasterArt.position = Array(i*10, 0); theRasterArt.embedded = false ! true で埋め込む theRasterArt.resize(20,20) // in % }