我试图为InDesign编写一个非常自定义的导出脚本(我有CC 9.2,但我的目标是CS6)。
当我处理一个段落时,我可以得到它的paragraphStyle及其内容。我不明白的是:如何获取内容的和内容的字符?
我正在查看文档,但我不明白如何进入一个段落并查找所有characterStyles及其应用的文本部分。
例如,如果我有一个如下所示的段落:
我的好的段落。
我想知道"My "
和" paragraph."
有style1,而"nice"
有style2。
最终结果应该是:
[
{
text: "My ",
style: "style1"
},
{
text: "Nice",
style: "style2"
},
{
text: " paragraph.",
style: "style1"
}
]
我如何获得该信息?
答案 0 :(得分:5)
使用段落的TextStyleRange属性。
TextStyleRange是一个具有相同格式的连续文本范围。 InDesign无论格式是否为“本地”都无关紧要。或通过字符样式应用。
强制性警告:
非常最小的示例代码:
tsr = app.selection[0].paragraphs[0].textStyleRanges;
text = [];
for (i=0; i<tsr.length; i++)
text.push ('text: "'+tsr[i].contents+'", style: "'+tsr[i].appliedCharacterStyle.name+'"');
alert (text.join ('\r'));