使用itext创建“仅打印” PDF

我们正在寻找替代方法,以替代当前通过小程序在Java

Web应用程序中打印支票的方式。似乎共识是使用PDF进行打印,而itext提供了使用Java进行打印的功能。

但是 ,在我们的特殊情况下,支票是“仅打印”的,这一点很重要-

用户在应用程序中不应该具有保存支票的任何能力(我知道精明的用户可以做一个PrintScreen,但我们想遮盖住后盖,在应用程序中不进行任何本机功能来保存支票)。

我在浏览Web上未能成功找到是否可以以这种方式使用itext创建PDF。我看到过有关限制PDF权限的帖子,但是我真正想要的是一种

使用itext在本地保存PDF的功能。

是否存在此功能?如果是这样,您能指出我的文档/代码示例吗?

回答:

我假设您正在提供此PDF,并希望从未安装任何普通客户端插件的Web应用程序/网站中进行打印。

如果使用常规方式(例如Adobe Reader)打印PDF,则 将PDF 下载到浏览器的缓存中才能打开和打印。没有办法解决。

现在,您可以通过以下方法来防止普通的Joe在本地保存PDF,但任何精明的用户都可以检查HTML的源代码并直接下载PDF。

  1. 在iText中输出PDF,以便在打开PDF时自动进行打印操作
  2. 在载入此PDF的HTML页面上放置一个不可见的IFRAME,但在浏览器中对用户不可见

当用户加载您的HTML页面时,PDF将被加载到IFRAME中并发送到用户打印机(假定浏览器中已安装Adobe

Reader)。是的,PDF将最终存储在浏览器的缓存中,但是用户必须足够精明,才能识别这一点,然后在浏览器的缓存中查找它。

如果这是不可接受的,那么您将不得不考虑将PDF转换为另一种文件类型(例如,将页面呈现为浏览器中显示的图像,或者可能是将文档中的每个页面发送到打印机的Flash

/ Java对象。直)

以上是 使用itext创建“仅打印” PDF 的全部内容, 来源链接: utcz.com/qa/408394.html

回到顶部