我正在 java 环境中使用 itext 做一个 Web 应用程序。
这里的主要问题是我需要“禁用”打印按钮。这是一般流程:
1) 用户使用 IE 下载 PDF 2) 用户选择打印 PDF。3) 打印 PDF 后禁用 PDF 打印按钮。
有可能做到吗?
我已经探索了为打印功能添加安全功能,但我想要的是在用户打印一次 pdf 后禁用打印按钮。
或者是否可以使用javascript通过弹出消息“拦截”打印功能并停止打印pdf。
谢谢。
您的意思是您希望文档可以只打印一次?忘了它。
如果您使用 JavaScript 应该是可能的(以前有一家德国公司“DHL”使用它)但考虑一下:您需要用户的“帮助”(用户必须使用启用 JavaScript 的 Pdf-Reader事实并非如此),几乎每个用户都能够规避此安全功能(fe 修补 iText 以忽略每个安全功能是单行的,我知道,因为我这样做了......)如果打印会发生什么用户端出问题了?
我之前提到的这家德国公司认识到他们保护用户免于多次打印文档的想法是废话,他们取消了锁(这些是带有条形码标签的邮票)。
不,那是不可能的。您可以使用加密禁用打印,但这是一个全有或全无的交易。您可以说:多次禁用打印(即使您可以:客户可以多次保存同一个 PDF,并打印每个副本)。
您需要一个 DRM 解决方案来实现您想要的(而 iText 不提供 DRM 服务)。这些服务通常非常昂贵。文档需要连接到服务器以检查文档是否已经打印,然后才允许打印。