1

当前设置:

Adobe InDesign Server CS5 通过 PHP SOAP 通过 ExtendScript 编写脚本

问题:

我目前正在使用以下代码将图像文件放入矩形中:

 frame     =   doc.rectangles[0];
 imgList   =   frame.place(new File(img));

这很好用;该img文件按预期放置到矩形中。但是,这仅指文档中的第一个矩形:如果文档中有两个矩形,则图像将放置到最后创建的矩形中。

理想情况下,我希望能够通过其 XML 标记来引用矩形 - 例如:

frame     =   doc.getRectangleByTag('Pic'); // <Pic> being the name of the XML tag
imgList   =   frame.place(new File(img));

有人对如何实现这一点有任何建议吗?我意识到这是一个初步的问题,但经过几个小时的搜索,我没有发现任何乐趣。

非常感谢

4

1 回答 1

1

没有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));

希望这可以帮助!

于 2011-05-26T18:39:17.007 回答