问题描述
|
当前设置:
通过PHP SOAP通过ExtendScript编写脚本的Adobe InDesign Server CS5
问题:
我目前正在使用以下代码将图像文件放入矩形中:
frame = doc.rectangles[0];
imgList = frame.place(new File(img));
这很好用;将“ 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));
希望这可以帮助!