使用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文档很差。
答案 0 :(得分:0)
建议使用:
var m1stParas = app.activeDocument.groups.everyItem().textFrames.everyItem().paragraphs[0];
应该返回一个段落数组(每个元素是每个组中每个TF的第一段)
所以你将拥有一组文本对象。每个object.contents
都是一个字符串。
如果出现错误&#34;无效的对象&#34; - 你的doc可能在某些组中是空的textFrames吗?
亚雷克