我正在使用 Websupergoo AbcPdf 生成器,以c sharp的方式从我的代码生成pdf。我希望它对最终用户来说是只读且不可编辑的。我已经尝试了它的加密属性: -
pdfDoc.Encryption.CanChange
pdfDoc.Encryption.CanEdit
pdfDoc.Encryption.CanAssemble
pdfDoc.Encryption.CanExtract
pdfDoc.Encryption.CanFillForms
pdfDoc是我的pdf对象。
这些解决了多个目的,例如避免编辑,删除,添加新页面,签名,突出显示,添加便笺,导出到其他格式等。 上述属性有效,但出现了一个问题,导致所有这些变化无效。
Acrobat 11 pro' Protection'中有一个工具。用户可以通过代码删除所有强加给pdf的证券。
我不知道该怎么做,我也不想要任何密码保护,只是让它永远只读。 请帮忙..!
答案 0 :(得分:0)
您的应用程序所做的是设置您在Acrobat XI的“文档属性”对话框的“安全”选项卡中看到的选项。为了防止这样更改,您必须指定所有者密码。我不知道是否有一个选项可以在您的应用程序中设置该密码(如果没有,提供加密是没有实际意义的,并且必须被视为该应用程序中的一个严重错误。)
这就是这种机制的运作方式。
然而,问题是,考虑到每种保护措施都可以被破解(或多或少都容易),你需要多少保护,以及它对你有多大价值。在高端,您拥有DRM系统,您可以在其中控制对文件的访问权限及其功能。它们并不便宜,但您可能会找到服务提供商。
在低端,如果您对PDF有一个很好的理解,你可以用字体和字体编码来愚弄,这样任何尝试在文档中乱涂都会导致问题。