0

我正在使用 InDesign CS6 中的 XML 文件,每个文件都有几十个段落,其中class="boxtitle". 其中每一个都需要设置为“Boxtitle”段落样式。因为 InDesign 不允许您根据属性设置样式,所以为相关段落分配正确样式的唯一选择是手动或通过脚本进行。

自然地,我选择了后者,并在 Adob​​e 论坛上找到了一个似乎可以解决问题的脚本。不幸的是,脚本不起作用,我不确定为什么。

var myDoc = app.activeDocument;
//____________________ Apply Boxtitle
try{
var rootElement = myDoc.xmlElements.item(0);
var subheadElementList = rootElement.evaluateXPathExpression("Boxtitle");
for(i=subheadElementList.length-1; i>=0; i--){
    var myAttribute = subheadElementList[i];
    myAttribute.xmlContent.appliedParagraphStyle = myDoc.paragraphStyles.itemByName("boxtitle");
    }
}catch(e){}

如果有人能指出我这里发生了什么问题,我将不胜感激。谢谢!

4

1 回答 1

0

您将需要使用正确的 xPath 表达式来匹配您的段落

var subheadElementList = rootElement.evaluateXPathExpression("//*[@class = 'boxtitle']");

如果您的段落具有标记名称“mypara”,则更具体,例如:

var subheadElementList = rootElement.evaluateXPathExpression("//mypara[@class = 'boxtitle']");
于 2013-06-13T21:16:24.520 回答