javascript - Indesign脚本: Get first paragraph in textframe in each group

标签 javascript adobe-indesign

使用 Indesign CS5.5,我收集了大量组 - 所有组都带有图像和文本框架。文本框默认有 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 文档相当糟糕。

最佳答案

建议使用:

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

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

因此您将拥有一组文本对象。每个object.contents都是一个字符串。

如果出现“无效对象”错误 - 您的文档在某些组中是否可能存在空文本框架?

贾雷克

关于javascript - Indesign脚本: Get first paragraph in textframe in each group,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47091349/

相关文章:

javascript - 在 InDesign 中选择线程中的所有文本?

javascript - highcharts 总是控制台有关 bubble_compiled.js 的错误?

javascript - 单击颜色更改 - bool 值

javascript - 有没有数学。当我调用它时给出数字序列的函数?

javascript - 如何根据express/mssql中间件反馈有条件地渲染页面

java - 在 Java 中读取 IDML 文件

c++ - 如何获得为给定字符手动设置的字形?

javascript - 双动画,.stop() 没有修复它

mysql - 从 XML 导入到 InDesign

javascript - 使用 indesign 脚本上传到 ftp 文件夹