特定のフォルダにあるEPSファイルを印刷する

解  説
特定のフォルダにあるEPSファイルを印刷するにはフォルダオブジェクトを作成しファイルリストを取得します。下記コードの青文字部分が印刷するフォルダのパスになります。サンプルではルートドライブ(起動ボリューム/ルートディレクトリ)にあるprintフォルダを指定しています。EPSファイルのみフォルダから抽出して印刷するにはgetFilesを使って拡張子がepsのみのファイル一覧を取得します(サンプルの緑色の部分。*.aiとするとイラストレータファイルのみが開かれます)。あとは、一覧からファイル名を指定してopenでファイルを開きます。開いたドキュメントを印刷するには印刷オプションを全て設定してからprint()で印刷を行います。

注意:Illustrator 10のprint()メソッドとは全く互換性がなく動作も異なります。このため、ver 10で作成した印刷関係のスクリプトは動作しません。CSで作成したものをver 10で動作させることもできないので注意が必要です。また、期待通りに印刷できない場合には、環境に合わせてプリントオプションを指定する必要があります。プリントオプションに関してはIllustrator CS JavaScript Referenceの156ページ(英文)以後を参照してください。

コード
function docPrint()
{
printOptions = new PrintOptions();
colorOptions = new PrintColorManagementOptions();
colorOptions.name = "
ColorMatch RGB";
colorOptions.intent = PrintColorIntent.SATURATIONINTENT;
printOptions.colorManagementOptions = colorOptions;
printJobOptions= new PrintJobOptions();
printJobOptions.designation = PrintArtworkDesignation.VISIBLEPRINTABLELAYERS;
printJobOptions.reverse = true;
printOptions.jobOptions = printJobOptions;
coordinateOptions = new PrintCoordinateOptions();
coordinateOptions.fitToMedia =
true;
printOptions.coordinateOptions = coordinateOptions;

flatOpts = new PrintFlattenerOptions();
flatOpts .ClipComplexRegions = true;
flatOpts .GradientResoultion =
60;
flatOpts .RasterizatonResotion =
60;
printOptions.flattenerOptions = flatOpts;

activeDocument.print(printOptions);
}

folderRef = new Folder("
/print/"); // 印刷するデータのあるフォルダ名
fileList = folderRef.getFiles("
*.eps");
for (i=0; i<fileList.length; i++)
{
fileObj = new File(fileList[i].fsName);
open(fileObj);
docPrint();
activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}


■サンプルをダウンロードする >>.zip