在PDF文件中使用JavaScript代码的文档


72

我在哪里可以找到文件上运行的PDF中的JavaScript代码?

我从未在PDF文档中添加JavaScript操作。但是,我已经使用JavaScript完成了很多Web开发。我对任何对PDF文档中的JavaScript熟悉的人有一些疑问。

NitroPDF和Adobe Acrobat绝对支持PDF文件中的JavaScript。是否存在关于存在的各种对象的标准,以及通过JavaScript处理PDF文件的功能? 到目前为止,我发现的所有内容都来自Adobe。似乎还有其他地方可以参考Adobe的文档。是否有标准?或者Adobe仅是“事实”标准?

另外,所有PDF查看器都支持JavaScript操作吗?

我可以找到有关在PDF文档中使用JavaScript的最佳文档,该文档来自Adobe- Adobe :: Acrobat JavaScript脚本指南

NitroPDF具有此链接-NitroPDF :: PDF文件中的JavaScript,但它基本上只是说它支持Adobe的功能。

我还从Scribus- Scribus ::如何使用JavaScript增强PDF表单中找到了此链接,但这仅包括一些小的代码片段。没有什么超级有用的。

Adobe拥有有关如何使用其IDE为JavaScript设置断点等的文档。是否可以使用另一个IDE在PDF文件中运行JavaScript并具有断点等?找到像Firebug一样酷的东西真是太棒了。

注意:

请不要回答如何操作Web浏览器中加载的PDF。问题是关于从PDF文档中运行JavaScript。我正在尝试通过执行PDF文档中的JavaScript来探索各种可能性。具体来说,我可能会使用quickpdflibrary中的函数将JavaScript功能添加到现有文档中。

另一个有用的链接是使用Acrobat JavaScript开发。显然,PDF中的JavaScript代码通常被称为AcroJS或Acrobat JavaScript。

Answers:


36

可能您正在寻找Acrobat®API参考的JavaScript™

该参考资料应该是最完整的。但是,正如@Orbling所说,并非所有PDF查看器都可能支持所有API。

编辑:

事实证明,Acrobat SDK中有较新版本的引用(感谢@jss)。

Acrobat开发人员中心包含指向不同版本文档的链接。也可以从Acrobat DC SDK获得最新版本的JavaScript参考


哇...该API参考比我发现的要好得多。谢谢。太糟糕了,没有/在那里,虽然:(我可能只需要尝试一些JavaScript,看看通过试验,标准误差支持JavaScript。
萨姆

就我所记得的阅读而言,某些核心(Acrobat)JavaScript将成为ISO 32000下一版本的一部分……然后,这当然是PDF查看器制造商决定是否要符合ISO 32000的决定。FWIW,确实支持某些JavaScript的“更好的” PDF查看器制造商的支持页面中提供了对他们所支持内容的概述,否则,您可以要求他们对这些信息的支持。
Max Wyss

1
敬请注意,该参考资料自2007年以来未进行过更新。Max Wyss的答案是Adobe提供的最新文档
jss

@jss您是否检查了Acrobat SDK?它是否附带了更现代的JavaScript-in-PDF参考?
Bobrovsky

1
@Bobrovsky是的。他们为Acrobat的每个版本提供了新的Javascript参考,最近的更新是在几个月前。我觉得8.1版本是最新的JavaScript基准Adobe提供的,这不是与整个SDK包捆绑,以任何理由,他们还没有把它下来,尽管他们停止在2012年支持Acrobat 8的事实
JSS

5

我很确定这是一个Adobe标准,请牢记整个PDF标准都是他们的标准。尽管现在开放。

我的猜测是没有对所有的PDF查看器支持它,因为有些绝对不会有一个JS引擎。我怀疑您是否可以依赖Acrobat(Reader)最新版本以外的全面支持。因此,我想这取决于您对它的使用方式,如果主要通过浏览器显示,那么市场的大部分将由Acrobat(阅读器)和Chrome的内置查看器来满足-敢说有关于Chrome的PDF是否存在的文档查看器完全支持JS。


3

Acrobat JavaScript文档的综合场所是Acrobat SDK,可从Adobe网站下载。在“文档”部分,您将找到使用Acrobat JavaScript所需的所有材料。

要完成文档,您可能还需要获得JavaScript Core的规范。我选择的那本书是O'Reilly出版的David Flanagan的“ JavaScript,权威指南”。


链接到包含Javascript参考adobe.com/devnet/acrobat.html
jss

我猜.....留给Adobe将所有JS文档放到Google无法帮助您搜索的地方?...我现在很困惑...
赛马会

2

寻找Ted Padova的书。多年来,他撰写了一系列名为The Acrobat PDF {5,6,7,8,9 ...} Bible的书。它们在PDF文件中包含有关JavaScript的章节。它们不像这里列出的参考文档那样全面,但是在书中有一些在上下文中讨论的实际用例。

在2010年的一次会议上还发表了关于计算机科学家入侵PDF文件的演讲。演讲的公告页面上与幻灯片链接已死,但Google是您的朋友。但是,该演讲并非专门针对JavaScript。YouTube视频-JavaScript从06:00开始。


谢谢您的回答。我去找书。我认为在上下文中查看示例将很有用。
山姆

@Sam更新了我的答案,还有我刚才记得的另一件事。
knb 2012年

1

在这里您可以找到“ Adob​​e Acrobat Forms JavaScript对象规范版本4.0”

修订日期:1999年1月27日

它很旧,但是仍然有用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.