当前设置:
Adobe InDesign Server CS5通过PHP SOAP通过ExtendeScript编写脚本
问题:
我目前正在使用以下代码将图像文件放入矩形中:
frame = doc.rectangles[0];
imgList = frame.place(new File(img));
这很好;CCD_ 1文件如预期的那样被放置到矩形中。然而,这仅指文档中的第一个矩形:如果文档中有两个矩形,则图像将被放置到最后创建的矩形中。
理想情况下,我希望能够通过矩形的XML标记来引用它——类似于:
frame = doc.getRectangleByTag('Pic'); // <Pic> being the name of the XML tag
imgList = frame.place(new File(img));
有人对如何实现这一目标有什么建议吗?我意识到这是一个基本的问题,但经过几个小时的搜索,我没有找到任何乐趣。
非常感谢
据我所知,没有'getRectangleByTag
'方法。但是,如果您知道要查找的矩形的"id
"或"name
"属性,则可以循环浏览文档中的矩形,并找到如下内容:
var rectangles = doc.rectangles;
var rectID; //the ID you're looking for
var myRectangle;
for(var i = 0; i < rectangles.length; i++){
if(rectangles[i].id == rectID){
myRectangle = rectangles[i];
}
}
myRectangle.place(new File(img));
希望这能有所帮助!