我正在尝试将一些javascript应用于pdf以使其静默打印。我发现了这段代码并粘贴了它,但是得到了下面的错误。
SyntaxError:missing;之前 声明1:第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();
}
我还不太了解缺少的分号在哪里。这是否意味着在该行开头的第二行代码中缺少它?
答案 0 :(得分:0)
那是Java,而不是Javascript。
此Java代码将以下Java 脚本代码添加到PDF文件中:
this.print({bUI: false, bSilent: true, bShrinkToFit: true});
this.closeDoc();
答案 1 :(得分:0)
没有真正丢失的分号。只是javascript解释器试图将您的Java解释为Javascript并且无法理解它。具体来说,它无法找出“文档文档”的有效语法树,因此似乎决定“文档”本身就是一个完整的语句,并希望您使用分号将其与以下语句分开。
正如SLaks所说,尝试只用两行javascript(this.print()......等)粘贴,看看是否有效。