Indesign脚本:在每个组的{text}框架中获取第一段

时间:2017-11-03 08:28:32

标签: javascript adobe-indesign

使用Indesign CS5.5,我拥有大量的群组 - 所有群组都带有图像和文本框架。默认情况下,textframe有3个段落。

我需要从每个文本框的第一段获取文本。

到目前为止,我有这个:

var textboxes = app.activeDocument.groups.everyItem().textFrames;
for (i = 0; i <= textboxes.length; i++) { 
    if(textboxes[i] != 'undefined') {
        var product = textboxes[i].contents;
        $.writeln(product);
    }
}

这给了我所有的文字......我真的只需要获得第一段或按字母大小过滤它。

我已尝试使用textboxes[i].paragraphs[0],但这会返回相当含糊的Object Invalid。它可能是一个特定的群体,但对我来说它太模糊了。

如果对象无效,有没有办法跳过并继续。或者有没有办法只查找具有特定字体大小的文本?

非常感谢任何帮助。我发现Indesign的脚本API文档很差。

1 个答案:

答案 0 :(得分:0)

建议使用:

var m1stParas = app.activeDocument.groups.everyItem().textFrames.everyItem().paragraphs[0];

应该返回一个段落数组(每个元素是每个组中每个TF的第一段)

所以你将拥有一组文本对象。每个object.contents都是一个字符串。

如果出现错误&#34;无效的对象&#34; - 你的doc可能在某些组中是空的textFrames吗?

亚雷克