目前,在我们的网络应用程序中,我们使用Java Applet作为PDF查看器,其中也包括:
我最近听说Google将终止他们对Chrome的Java Applet插件支持。
使用基于HTML5的PDF查看器,我是否可以获得与上述相同的限制?
答案 0 :(得分:1)
[...]阻止用户保存PDF文档并打印PDF 物理打印机中的内容(不是软打印机,即保存)。 [...] 我可以通过HTML5画布完成上述PDF查看器功能吗?
对您的问题的简短回答是,不,使用基于HTML5的PDF查看器无法实现这些功能。
更长的版本:
如果PDF已在浏览器中加载,则文档也可以由用户直接下载。浏览器及其用于显示 PDF的任何解决方案将具有与用户相同的访问级别,或者换句话说:用户具有与浏览器相同的访问级别。链接是所有必需的,可以通过开发控制台(或代理)轻松获得。
无法直接从用户的系统加载文件。由于安全原因,用户必须选择文件,因此他也可以访问该文件以便能够选择该文件。
因此无法阻止下载。
如果查看者遵守文档的这种状态标志,则可以防止根据查看器的实现进行打印。无法区分浏览器环境中使用的打印机类型。 JavaScript只能在不知道打印机或打印过程的情况下调用打印对话框。
即使它可以:使用纯HTML5解决方案意味着将在客户端的开源中涉及JavaScript。具有编程技能的用户可以覆盖部分源代码。在任何情况下,用户只需屏幕抓取页面并保存抓取。
所以不,打印不能强制进入物理单位(或阻止)。
对于浏览器,请查看pdf.js。这是Firefox正在使用的解决方案,我相信Chrome将来会使用。