格式文本为粗体

时间:2016-12-19 11:17:51

标签: javascript adobe-indesign

我有一个xml文件,我正在使用indesign java脚本从它读取数据。 有一次,当我在'<b>'INDIA'</b>'中包含xml文本时,我就陷入困境,然后在执行java脚本后应该转换为粗体 INDIA 字体。 在indesign java脚本中是否有任何方法可以将该特定文本转换为粗体或其他字体样式。

我没有编码任何东西,但下面是我在网上找到的代码,但也没有工作

var doc = app.activeDocument;

var frame = doc.pages[0].textFrames.add({
geometricBounds: [700, 50, 500, 200]
});

var bold = doc.characterStyles.add({name:"Bold", fontStyle:"Bold"});
var none = doc.characterStyles.itemByName("[None]");

frame.insertionPoints.lastItem().applyCharacterStyle(none);

frame.insertionPoints.lastItem().contents = "I really like";

frame.insertionPoints.lastItem().applyCharacterStyle(bold);

frame.insertionPoints.lastItem().contents = " walking to the park";

frame.insertionPoints.lastItem().applyCharacterStyle(none);

frame.insertionPoints.lastItem().contents = " and eating icecream";

1 个答案:

答案 0 :(得分:1)

您的样本只需要稍加修改才能有效。默认字符和段落样式始终将索引设置为0,因为它们既不能移动也不能移除。

所以你可以试试这个:

var doc = app.activeDocument;

var frame = doc.pages [0] .textFrames.add({ 几何边界:[700,50,50,200] });

var bold = doc.characterStyles.itemByName(“Bold”); !bold.isValid&amp;&amp; bold = doc.characterStyles.add({name:“Bold”,fontStyle:“Bold”});

var none = doc.characterStyles [0]; // similmar到“[无]”

frame.insertionPoints.lastItem()applyCharacterStyle(无);

frame.insertionPoints.lastItem()。contents =“我真的很喜欢”;

frame.insertionPoints.lastItem()applyCharacterStyle(粗体);

frame.insertionPoints.lastItem()。contents =“走到公园”;

frame.insertionPoints.lastItem()applyCharacterStyle(无);

frame.insertionPoints.lastItem()。contents =“and eating icecream”;

你在这里

A demonstration of applying bold to text through  script