DTP駆け込み寺

No.18928へ返信

記事投稿フォーム
補助
送信

[ 返信 ]

javascriptグループのエラー回避法

InDesign CS6自動化作戦の「画像をテキストフレームに自動的に読み込ませる」を参考にしました。
グループがあるとエラーが出ます。
再帰処理?はどのように書けばいいのでしょう。

var doc=app.activeDocument;
var actDocFolder = Folder(doc.filePath);

for(var i=0; i<doc.allGraphics.length; i++)
{
var imageObj=doc.allGraphics[i];
imageObj.parent.locked=true;//配置済み画像をロック、グループだとエラー
}

function setImage()
{
for (var i=0; i<doc.textFrames.length; i++)
{
var pname = doc.textFrames[i].contents;
if(pname.indexOf(".eps") > -1&&File(actDocFolder+ "/" + pname).exists)
{
doc.textFrames[i].place(File(actDocFolder+ "/" + pname));
}
}
}
setImage();
setImage();
setImage();//グループだと配置されない

for(var i=0; i<doc.allGraphics.length; i++)
{
var imageObj=doc.allGraphics[i];
if(imageObj.parent.locked)continue;
imageObj.fit(FitOptions.FILL_PROPORTIONALLY);
}

for(var i=0; i<doc.allGraphics.length; i++)
{
var imageObj=doc.allGraphics[i];
imageObj.parent.locked=false;
}

[18928] k (2016/10/30 Sun 13:37)