InDesign CSドキュメントをCS2に変換する

InDesign CSで作成したドキュメントをCS2で開くと変換されます。変換して保存する、というのが面倒な場合には、以下のようなスクリプトで対処できます。
まず、変換元のInDesign CSドキュメントをまとめてフォルダに入れておきます。エイリアス/ショートカットでも構いません。次に変換したドキュメントデータを保存するフォルダを用意しておいてから以下のスクリプトを実行します。

folderName = Folder.selectDialog("変換データ元のフォルダを選択してください");
if (folderName)
{
saveFolderName = Folder.selectDialog("保存先のフォルダを選択してください");
if (saveFolderName)
{
fileList = folderName.getFiles("*.indd");
for (i=0; i<fileList.length; i++)
{
fileObj = new File(fileList[i].fsName);
app.open(fileObj);
filePath = saveFolderName + "/" + fileList[i].name;
fileObj = new File(filePath);
app.activeDocument.save(fileObj,false);
app.activeDocument.close();
}
}
}


このスクリプトを1カ所変更するとテンプレートとして保存することができます。これは

app.activeDocument.save(fileObj,false);

のfalseの部分を

app.activeDocument.save(fileObj,true);

trueにします。これでテンプレートとして保存されます。
変換元のフォルダ内にエイリアス/ショートカットでドキュメントが参照されている場合、変換する際に同じファイル名があると上書きされてしまいます。このような場合には、異なるファイル名を付けるようにします。簡単な所では連続した番号をファイル名の先頭に付けるという方法があります。以下のスクリプトはファイル名の先頭に番号とアンダースコアを付加します。

folderName = Folder.selectDialog("変換データ元のフォルダを選択してください");
if (folderName)
{
saveFolderName = Folder.selectDialog("保存先のフォルダを選択してください");
if (saveFolderName)
{
fileList = folderName.getFiles("*.indd");
for (i=0; i<fileList.length; i++)
{
fileObj = new File(fileList[i].fsName);
app.open(fileObj);
filePath = saveFolderName + "/" + i + "_" + fileList[i].name;
fileObj = new File(filePath);
app.activeDocument.save(fileObj,false);
app.activeDocument.close();
}
}
}



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