0

我正在尝试将一些 javascript 应用于 pdf 以使其静默打印。我找到了这段代码并将其粘贴进去,但是得到了下面的错误。

语法错误:缺少;语句 1 之前:在第 2 行

这突出显示了以下代码的前 2 行:

Document document = new Document();
FileOutputStream fos = new FileOutputStream("APP_PERSONAL.pdf");

这是完整的代码:

Document document = new Document();
FileOutputStream fos = new FileOutputStream("APP_PERSONAL.pdf");

try {
  PdfWriter writer = PdfWriter.getInstance(document, fos);
  document.open();
  write.addJavaScript("this.print({bUI: false, bSilent: true, bShrinkToFit: true});",false);
  write.addJavaScript("this.closeDoc();");    
  document.add(new Chunk("Silent Auto Print"));
  document.close();
} catch (DocumentException e) {
    e.printStackTrace();
}

我还不够了解缺少的分号在哪里。这是否意味着该行开头的第二行代码中缺少它?

4

2 回答 2

0

那是Java,不是Javascript。

此 Java 代码会将以下 Java脚本代码添加到 PDF 文件中:

this.print({bUI: false, bSilent: true, bShrinkToFit: true});
this.closeDoc();
于 2010-08-31T16:26:57.653 回答
0

没有真正缺少分号。只是 javascript 解释器试图将您的 Java 解释为 Javascript 并且无法理解它。具体来说,它无法找出“文档文档”的有效语法树,因此它似乎决定“文档”本身就是一个完整的语句,并希望您用分号将它与以下语句分开。

正如 SLaks 所说,尝试仅粘贴两行 javascript(this.print()... 等),看看是否可行。

于 2010-08-31T16:35:29.183 回答