如何在PDF文件中编程注入JavaScript?没有Adobe Professional可以完成吗?我的目标是:我希望在打开PDF时立即显示打印对话框。我知道这可以通过在文档中嵌入JavaScript代码来实现。
xqnpmsa81#
如果您正在使用Java进行开发,请查看iText:http://www.lowagie.com/iText/我认为它支持你正在寻找的东西。也有一些.Net版本:http://www.ujihara.jp/iTextdotNET/en/
zzwlnbp82#
iText(和iText_Sharp_)非常有能力将JS添加到现有的PDF中......页面操作、链接、文档级脚本,应有尽有。The JavaDoc can be found here.这是用Java编写的,但是C#代码看起来几乎相同(如果不是完全相同,那么异常处理就像这样被剥离了)。
PdfReader myReader = new PdfReader( myFilePath ); // throws IOException PdfStamper myStamper = new PdfStamper( myReader, new FileOutputStream(outPath) ); // throws IOE, DocumentException // add a document script myStamper.addJavaScript( myScriptString ); // add a page-open script, 1 is the first page, not zero0 PdfAction jsAction = PdfAction.javaScript( someScriptString ); myStamper.setPageAction( PdfWriter.PAGE_OPEN, jsAction, myStamper.getWriter(), pageNumber ); // throws PdfException (for bad first param) PdfFormField button = PdfFormField.createButton(myWriter, PdfFormField.FF_PUSHBUTTON); button.setWidget( myRectangle, PdfAnnotation.HIGHLIGHT_INVERT ); // the important part, adding jsAction jsAction = PdfAction.javaScript( buttonScriptString ); button.setAdditionalActions( PdfAnnotation.AA_DOWN, jsAction ); // mouse down myStamper.addAnnotation( pageNum, button ); myStamper.close(); // write everything out, throws DocumentException, IOE
4dc9hkyq3#
我研究过PDF Specifications。原来PDF文件格式并不难。它有一个很好的特性,允许您只需在文件的末尾追加新内容就可以修改文档。如果你想做同样的事情...不要害怕!去看看规格。
3条答案
按热度按时间xqnpmsa81#
如果您正在使用Java进行开发,请查看iText:http://www.lowagie.com/iText/我认为它支持你正在寻找的东西。
也有一些.Net版本:http://www.ujihara.jp/iTextdotNET/en/
zzwlnbp82#
iText(和iText_Sharp_)非常有能力将JS添加到现有的PDF中......页面操作、链接、文档级脚本,应有尽有。
The JavaDoc can be found here.
这是用Java编写的,但是C#代码看起来几乎相同(如果不是完全相同,那么异常处理就像这样被剥离了)。
4dc9hkyq3#
我研究过PDF Specifications。
原来PDF文件格式并不难。
它有一个很好的特性,允许您只需在文件的末尾追加新内容就可以修改文档。
如果你想做同样的事情...不要害怕!去看看规格。