基于样式 Indesign Javascript 脚本 CC

Based On Styling Indesign Javascript Scripting CC

我想知道如何在 Adob​​e InDesign CC 中使用 JavaScript 设置(直接或其他替代方法)"Based on" 的样式 属性。如果我还可以要求提供导致参考答案的文档,将不胜感激。

我的代码:

var myPStyles = app.activeDocument.paragraphStyles;
var myPGroupStyles = app.activeDocument.paragraphStyleGroups;

// paragraph style 0 [No Paragraph Style]
// paragraph style 1 [Basic Paragraph Style]

var masterPGroupStyles = myPGroupStyles.add({name:"Master Fonts"});
var masterFont1 = masterPGroupStyles.paragraphStyles.add({name:"Font1"});
var masterFont2 = masterPGroupStyles.paragraphStyles.add({name:"Font2"});

目标:使 Font2 以 Font1 为基础

属性 被称为(并不奇怪)basedOn。以下将根据 masterFont1 创建您的 masterFont2 样式:

var masterFont2 = masterPGroupStyles.paragraphStyles.add({name:"Font2", basedOn:masterFont1});

与您在 post 中所说的相反,不提供 basedOn 属性 将 不会 分配 "Basic Paragraph Style",它将永远是 "No Paragraph Style".


您可以在 "Help" 下的对象模型查看器中的 InDesign 附带的 ExtendScript 工具包编辑器中找到段落样式的所有属性。在搜索字段中输入 'paragraphStyle'(单数),您将获得一个主题列表。然后打开面板 "Browser" 你会看到...哦等等,我已经很久没有使用 ESTK 我实际上忘记了为什么我讨厌它:你会得到这张不太有用的闪存卡:

提供了所有帮助,我听说您实际上可以通过这个漂亮的界面获得它,但这些天我根本不打扰。根据您的 InDesign 版本(实际上差异很小),检查我在麻省理工学院的缓存版本 Class ParagraphStyle for CS6 (older versions are available there as well) or, for CC-and-newer, Gregor Fellenz' InDesign ExtendScript API (10.0) - ParagraphStyle

这两组页面都是从 Adob​​e 用于其自己的编辑器的完全相同的数据生成的,但数据以更友好的格式显示。 MIT 版本缺少搜索框,但可以下载 from my own site CHM 编译格式的文件。 Gregor 的网站配有完善的搜索字段。

这两个都是 参考 站点,并且假设读者了解 Javascript 及其与 InDesign 文档对象模型的接口的基本知识。有关基础知识的更多信息,您可以随时查看 Adobe's own list of introductions and tutorials.