【发布时间】:2018-07-11 15:41:14
【问题描述】:
所以我希望在 Document Open 中运行一些 JavaScript 代码,因此我将 .js 文件放入了 Acrobat\JavaScripts 文件夹(在 Program Files 中)。我正在尝试运行以下代码:
function ChangeFont()
{
var nNumFields = this.numFields;
console.println("There are " + nNumFields + " in this document.");
var cFieldName; var oField;
for(i = 0; i < nNumFields; i++)
{
cFieldName = this.getNthFieldName(i);
oField = this.getField(cFieldName);
oField.textFont = "PTSans";
}
}
ChangeFont()
打开 PDF 会运行我插入到同一文件夹中的其他代码,但不是这个(因为字体不会改变)。当手动将此代码粘贴到 Acrobat JavaScript 调试器中时,选择所有代码并按 Ctrl+Enter,它可以完美运行。那么为什么它在 Document open 上不起作用??
我尝试通过制作一个单独的 .js 来隔离问题,该 .js 选择一个特定字段并更改其字体,如下所示:
var f = this.getField("myField");
f.textFont = "PTSans";
将 test.js 放入 JavaScripts 文件夹后,使用 Acrobat 打开 PDF 文档,我立即收到以下错误:
"TypeError: "this.getField" 不是函数。"
再次,我在调试器控制台中手动运行它,它运行良好。
这里发生了什么?我不认为我使用的是 LiveCycle Designer 界面,它只是 Adobe Acrobat 10。
编辑:目的是在打开文档时使所有字段都采用某种字体。
【问题讨论】:
-
你应该尝试放置“调试器;”在“this.getField”之前,再次开始运行并检查 this.getField("myField")。
-
不幸的是,由于某些原因按钮变灰,我无法检查:/
标签: javascript acrobat