我需要在我的网站中构建一个功能来显示 pdf 文件。但是我不希望它们可以保存或下载。有没有办法强制浏览器禁止保存和下载 pdf 文件。
3 回答
不,如果你看到任何东西,它就是你的。当您查看 pdf 文件时,文件内容在您的计算机内存中。
信息可以公开或私有。没有中间,如果您希望将私有数据更改为公共数据,则无法撤消此更改。
你说的是:
- 我想将数据发送到属于某个用户的远程计算机
- 然后我想限制远程计算机可以使用该数据做什么
第一部分是互联网的作用。第二部分是不可能的,因为您无法控制用户机器上正在运行的进程。
需要明确的是,为了向用户显示 PDF 文件,您必须允许用户的浏览器下载该文件才能将其显示给用户。但是,用户是选择将该信息写入屏幕还是写入文件,这是您无法控制的。
您唯一的选择是限制或标记您发送给用户的数据,可能会将 PDF 展平为一系列图像文件,或对 PDF 加水印,尽管用户仍然可以保存这些图像,而您将使其变得更加困难让人们阅读您尝试提供的文档。或者,您可以在将 PDF 数据发送到浏览器之前将其翻译成一系列 javascript 指令,在浏览器中可以执行此代码并将 PDF 呈现到画布元素。即使使用这种方法,用户也可以截取屏幕截图。
这个问题的问题在于:它本末倒置。您不是在寻求问题的解决方案,而是假设解决方案并寻求实施它的帮助。告诉我们根本问题- 您是否要跟踪查看 PDF 的次数?您是否想在以后撤销对 PDF 的访问权限?也许这些文档是参考资料,您想为您的网站带来经常性流量?或者,内容归第三方所有,并且有一些关于分发的合同规定?在不了解这一点的情况下,我们无法为您面临的问题提供明智的解决方案。
也许内置的 pdf 权限管理足以满足您的需求。因此用户可以下载 pdf 但不能执行特定操作。
另一种方法是将 pdf 渲染成图像,因此用户无法下载整个 pdf。