首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁用Adobe阅读器中的保存按钮,并在IE窗口中隐藏菜单栏

禁用Adobe阅读器中的保存按钮,并在IE窗口中隐藏菜单栏
EN

Stack Overflow用户
提问于 2014-04-05 11:44:25
回答 1查看 8.7K关注 0票数 2

我试图通过servlet呈现PDF,使用Itext获取PDF文件。

需要禁用保存,打印选项在adobe阅读器菜单栏,而其他选项,如滚动,查找应该在那里,此外,需要禁用文件菜单的浏览器窗口,它是在其中呈现。

我已经使用下面的代码禁用了打印和文件菜单

代码语言:javascript
复制
stamper.setEncryption(null,null,
                 PdfWriter.HideWindowUI, PdfWriter.STRENGTH40BITS); 

stamper.setViewerPreferences(PdfWriter.HideToolbar);

问题是

  1. 禁用Adobe阅读器菜单栏中的保存按钮(使用**Adobe 9**)。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-05 15:21:28

我们需要区分两个不同的方面:印刷和储蓄。

您可以对文件进行加密,并以不允许打印的方式设置权限。但是:如果只使用所有者密码加密文档,则很容易解密文档并取消限制。使用所有者密码加密文档只在心理层面上起作用:例如:您表示文档的原始生产者不希望文档被打印。

如果您想避免最终用户保存PDF文档,那么您所要求的是一些不可能的事情。避免最终用户没有PDF副本的唯一方法是不发送PDF。如果磁盘上没有实际字节,则无法在Adobe中打开PDF。即使您要禁用保存(例如在web应用程序的上下文中),您也总是可以在临时文件中的某个位置找到PDF,并且人们可以根据自己的意愿多次复制该文件。

在代码片段中,您尝试隐藏工具栏(查看器首选项),但这是没有意义的。此查看器偏好是否会被完全尊重取决于PDF查看器。例如:在Adobe和更高版本中,当您悬停在文档上时,会出现一个特殊的小部件。这个小部件允许用户保存文档。

即使使用Adobe 9,隐藏工具栏也是不够的:如果用户选择适当的菜单项或点击适当的“热键”,工具栏就会出现,他们可以很高兴地单击Save按钮。此外,他们也可以正确点击并选择“保存”。

总之,你问错问题了。

您需要做的不是阻止保存,而是控制PDF的实际使用,这就是DRM (数字版权管理)出现的地方。然而,DRM通常是非常昂贵的,它需要一个定制的PDF查看器,而且它超出了iText的范围。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22880444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档