HTML5 Canvas 中的 PDF 查看器
PDF Viewer in HTML5 Canvas
目前在我们的网络应用程序中,我们使用 Java Applet 作为 PDF 查看器,它还:
- 阻止用户保存 PDF 文档
- 将 PDF 内容打印到 物理 打印机(而不是软打印机,即保存)。
我最近听说 Google 将结束对 Chrome 的 Java Applet 插件支持。
使用基于 HTML5 的 PDF 查看器时,我能否有与上述相同的限制?
[...] blocks the user from saving the PDF document and prints the PDF
content in physical printer (not in a soft printer i.e., save). [...]
Can I accomplish above PDF viewer feature through HTML5 canvas?
对您的问题的简短回答是,不,这些功能无法使用基于 HTML5 的 PDF 查看器实现。
更长的版本:
如果在浏览器中加载 PDF,用户也可以直接下载文档。浏览器及其用于 显示 PDF 的任何解决方案将具有与用户相同的访问级别,或者换句话说:用户具有与浏览器相同的访问级别。 link 是所有必需的,可以通过开发控制台(或代理)轻松获得。
无法直接从用户系统加载文件。出于安全原因,用户必须选择文件,因此他也已经可以访问该文件才能选择它。
所以无法阻止下载。
根据查看器的实施情况,如果查看器遵守文档的此状态标志,则可以阻止打印。无法从浏览器环境内部区分正在使用的打印机类型。 JavaScript 只能在不知道打印机或打印过程的情况下调用打印对话框。
即使可以:使用纯 HTML5 解决方案意味着将 JavaScript 涉及到客户端的开源。具有编程技能的用户可以覆盖部分源代码。在任何情况下,用户都可以简单地通过屏幕抓取页面并保存抓取。
所以不,打印不能强制到一个物理单元(或阻止)。
HTML5 观众
对于浏览器,请查看 pdf.js。这是 Firefox 正在使用的解决方案,我相信 Chrome 将来会使用。
目前在我们的网络应用程序中,我们使用 Java Applet 作为 PDF 查看器,它还:
- 阻止用户保存 PDF 文档
- 将 PDF 内容打印到 物理 打印机(而不是软打印机,即保存)。
我最近听说 Google 将结束对 Chrome 的 Java Applet 插件支持。
使用基于 HTML5 的 PDF 查看器时,我能否有与上述相同的限制?
[...] blocks the user from saving the PDF document and prints the PDF content in physical printer (not in a soft printer i.e., save). [...] Can I accomplish above PDF viewer feature through HTML5 canvas?
对您的问题的简短回答是,不,这些功能无法使用基于 HTML5 的 PDF 查看器实现。
更长的版本:
如果在浏览器中加载 PDF,用户也可以直接下载文档。浏览器及其用于 显示 PDF 的任何解决方案将具有与用户相同的访问级别,或者换句话说:用户具有与浏览器相同的访问级别。 link 是所有必需的,可以通过开发控制台(或代理)轻松获得。
无法直接从用户系统加载文件。出于安全原因,用户必须选择文件,因此他也已经可以访问该文件才能选择它。
所以无法阻止下载。
根据查看器的实施情况,如果查看器遵守文档的此状态标志,则可以阻止打印。无法从浏览器环境内部区分正在使用的打印机类型。 JavaScript 只能在不知道打印机或打印过程的情况下调用打印对话框。
即使可以:使用纯 HTML5 解决方案意味着将 JavaScript 涉及到客户端的开源。具有编程技能的用户可以覆盖部分源代码。在任何情况下,用户都可以简单地通过屏幕抓取页面并保存抓取。
所以不,打印不能强制到一个物理单元(或阻止)。
HTML5 观众
对于浏览器,请查看 pdf.js。这是 Firefox 正在使用的解决方案,我相信 Chrome 将来会使用。