2016-09-15 893 views
0

我正在寻找隐藏或禁用Chrome PDF查看器中显示的下载按钮的方法。我已经使用fpdf(http://www.fpdf.org/en/script/script37.php)的保护脚本禁用了打印按钮,但它对下载按钮没有帮助。该PDF目前正在在新窗口中打开通过:在Chrome PDF查看器中隐藏/禁用下载按钮

window.open(URL, "", "resizable=yes, scrollbars=yes, titlebar=yes, width=1024, height=900, top=10, left=10");

我知道这将不会从保存/打印PDF停止任何有点知情的用户,但客户坚持要求在此“安全措施”。

如果我使用开发工具检查元素并添加显示:无它做我想要的,但我不知道如何在打开的新窗口中默认添加。

回答

0

由于您将pdf文件直接传送到浏览器中,使用Adobe Reader ActiveX显示,如何防止文件下载,因为文件在下载到临时目录后显示?

所以它不可能使用任何JavaScript库。

保护您的主PDF文件的唯一方法是为每个页面创建图像,并通过您自己的界面(html,flash等)将这些图像呈现给网页上的用户。

您可以使用ImageMagick以及GhostScript

你可能会经历veryinteractivepeople

希望这有助于。 (:

+0

嗨,我不需要实际上阻止下载文件,因为这是不可能的,因为就像你说它是在临时文件系统。我只想在Chrome浏览器中隐藏工具栏以满足任意的客户端请求。如果我使用开发人员工具检查元素,然后添加显示:没有它的窍门,但我不知道如何默认设置。 – Whiskeyjack

+0

我不认为这是可能的。 –

+0

你应该尝试使用pdf.js –

0

如果它只适用于不那么技术含量高的用户,则可以通过生成一次性可用的唯一URL(例如,使用存储在服务器上的查询字符串参数并允许下载按钮会再次下载并在这种情况下失败,但这是Chrome浏览器可能会改变的一个实现细节,如果用户在浏览器中没有PDF浏览器,或者它被禁用,该文件将默认下载

您可能想要尝试pdf.js,它将呈现并不在任何浏览器中下载,但技术用户仍然可以获取该文档,但性能可能不高比铬pdf查看器。

如果将内容转换为图像,用户仍然可以拍摄一批图像并将它们合并为pdf,但在这种情况下,文本难以恢复,但仍可以使用OCR。

如果您想使复制内容或检测内容更加困难,还可以在下载的图像中使用水印,或者合并steganography以基于在野外发现的已发布文件来识别制作复制品的用户。请注意,水印通常可以很容易地从PDF文件中删除,并且有点困难,但仍可以从图像中删除。精心设计的隐藏标识符(隐写术)也可以被删除,但必须首先找到隐藏标识符,通常用户在文档没有明显加盖时看不到。