テキストフレームに自動的に文字や画像を読み込ませる

■プログラム説明(ソースコード説明)
 先頭のページのテキストフレーム内に自動的にファイルから読み込んで文字や画像を表示させるには、あらかじめ読み込むファイルのパスをテキストフレームに入れておきます。サンプルではMacintosh HD:img:0001.jpgのようにファイルパスを表記しています。すでに文字が入っている場合に内容が入れ替わってしまうのはよくないため拡張子を調べてJPEG画像かテキストファイルの場合のみ処理を行います。


■ソースコード
function setData()
{
pageObj = app.activeDocument.pages[0];
for (i=0; i<pageObj.textFrames.length; i++)
{
filePath = pageObj.textFrames[i].contents;
if (filePath.indexOf(".jpg") > -1)
{
pageObj.textFrames[i].place(filePath);
}
if (filePath.indexOf(".txt") > -1)
{
fileObj = new File(filePath);
flag = fileObj.open("r");
if (flag)
{
txt = fileObj.read();
pageObj.textFrames[i].contents = txt;
fileObj.close();
}
}
}
}
setData();
setData();


■ポイント
 あらかじめInDesign側でフレームのサイズを設定しておくことができるので固定レイアウトの場合には便利です。

■実際のスクリプトをダウンロード(sample.js.zip)