レイヤーごとPDFで出力する

今回はIllustrator CS2でレイヤーを個別にPDFとして出力するスクリプトです。以下のスクリプトを実行するとドライブ(ボリューム)のルートに「000_レイヤー名.pdf」といったファイル名でPDFが生成されます。
保存先を変更するには

new File("/000_"+layObj[i].name+".pdf")

のカッコ内を変更してください。ここに保存先のフォルダのパスとファイル名を指定します。
layObj[i].nameはレイヤー名を示します。

実行前にIllustrator CS2のバージョンが12.0.1以上になっているかどうか確認してからにしてください。これ以前のバージョンではレイヤー名が日本語の場合、正しく処理されないためです。

docObj = app.activeDocument;
layObj = docObj.layers;
for (i=layObj.length-1; i>-1 ; i--){
for(j=0; j<layObj.length; j++){
layObj[j].visible = false;
}
layObj[i].visible = true;
pdfOpt = new PDFSaveOptions();
pdfOpt.compatibility = PDFCompatibility.ACROBAT7;
saveFile = new File("/000_"+layObj[i].name+".pdf");
activeDocument.saveAs(saveFile, pdfOpt);
}


毎回同じところに保存するのではなく、任意のフォルダに保存したい場合は以下のようになります。実行すると保存先のフォルダを聞いてきます。フォルダを指定すると、そのフォルダにファイルが保存されます。

folderObj = Folder.selectDialog("保存先フォルダを選択してください");
docObj = app.activeDocument;
layObj = docObj.layers;
for (i=layObj.length-1; i>-1 ; i--){
for(j=0; j<layObj.length; j++){
layObj[j].visible = false;
}
layObj[i].visible = true;
pdfOpt = new PDFSaveOptions();
pdfOpt.compatibility = PDFCompatibility.ACROBAT7;
saveFile = new File(folderObj.fsName+"/000_"+layObj[i].name+".pdf");
activeDocument.saveAs(saveFile, pdfOpt);
}



[サンプルをダウンロード]