javascript - PDF JavaScript 删除页面

标签 javascript pdf adobe

我正在研究一种愚蠢的黑客技术,让我的组织中的用户在浏览器窗口中加载某些 pdf 文件时更难“保存”它们。我能想到的最好的办法(除了使用证书加密,目前还不是一个选项)是创建一个“将保存”事件并在保存之前删除文档中的所有页面。

基于PDF Javascript API这应该很容易。

//-------------------------------------------------------------
//-----------------Do not edit the XML tags--------------------
//-------------------------------------------------------------

//<Document-Actions>
//<ACRO_source>Document Will Save</ACRO_source>
//<ACRO_script>
/*********** belongs to: Document-Actions:Document Will Save ***********/
this.deletePages(0, this.numPages - 1);
//</ACRO_script>
//</Document-Actions>

但是,当我点击“保存”时,出现以下错误。即使我只是执行 this.deletePages(0, 0) 或任何其他数字组合,也会发生这种情况。有谁知道我可能会犯什么愚蠢的错误?

TypeError: Invalid argument type.
Doc.deletePages:1:Document-Actions:Document Will Save
 ===> Parameter nEnd.

旁注,我找到了另一种“解决”此问题的方法,即在 Will Save 事件中调用 this.closeDoc() 。这会导致浏览器和 adobe 崩溃(它可以工作!但代价是什么?)。

最佳答案

这类似于“阻止”用户右键单击图像并保存它们的“技术”。

也许您想退后一步,检查为什么您不希望用户对 PDF 进行操作。您是否正在尝试将技术答案应用于非技术问题?

您试图阻止网络浏览器的正常行为,因此您将花费大量时间来尝试解决此问题,并且您无法保证您的方法不会因下一个浏览器版本而中断。精通技术的用户将在短时间内绕过您想出的任何技术。

基本上,您是说,“我想阻止用户使用他们已经下载到计算机上的文件执行某些操作(打开/查看/打印)。”

关于javascript - PDF JavaScript 删除页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10920202/

相关文章:

javascript - 自定义 AngularJS 指令未注册

javascript - 未捕获的类型错误 : Cannot read property 'length' of undefined - jQuery

pdf - Rmarkdown knit pdf - 使用 *italic* 获取带下划线的文本而不是斜体(huxtable 问题?)

apache - pdfbox Font TrueType 导致 stripper.getText() 错误

python-3.x - 从带有图像的扫描pdf中提取文本?

javascript - 基于单选按钮选择的计算 PDF FORM JS

javascript - DVD 中的 Electron 应用加载性能不佳

javascript - 更新用户权限 Facebook

html - 为什么 Adob​​e XD 中的 100 像素小于网站(Safari、Google Chrome 等)中的 100 像素?

javascript - getFullYear 不是函数