iTextSharp.LGPLv2.Core处理加密PDF遇权限错误,求替代unethicalreading的方法
解决iTextSharp.LGPLv2.Core 3.4.3中"PDFReader not opened with owner password"错误
在iTextSharp.LGPLv2.Core 3.x版本中,原有的PdfReader.unethicalReading静态属性已被移除,替代方案是通过ReaderProperties配置类来启用无所有者密码读取权限。
修改后的代码示例:
MemoryStream stream = new(); PdfCopyFields copy = new(stream); foreach (LetterTemplate t in sourceFiles) { // 使用ReaderProperties配置绕过所有者密码检查 var readerProps = new ReaderProperties().SetUnethicalReading(true); copy.AddDocument(new PdfReader(t.Data, readerProps)); }
说明:
ReaderProperties.SetUnethicalReading(true)的作用和旧版本的unethicalReading完全一致,允许程序读取那些仅提供用户密码(或无需密码即可打开,但受所有者权限限制)的PDF文件。- 该操作仅应在合法合规的场景下使用,确保你拥有处理目标PDF文件的相应权限。
内容的提问来源于stack exchange,提问作者Adam
相关产品推荐
相关产品推荐

