Aspose.PDF for .NET是一种高PDF处理和解析API,用于在跨平台应用程序中执行文档管理和操作任务。API可以轻松用于生成、修改、转换、渲染、保护和打印PDF文档,而无需使用AdobeAcrobat。此外,API还提供PDF压缩选项,表格创建和操作,图形和图像功能,广泛的超链接功能,印章和水印任务,扩展的安全控制和自定义字体处理。
【下载体验Aspose.PDF for .NET最新版】
在接下来的系列教程中,将为开发者带来Aspose.PDF for .NET的一系列使用教程,例如进行文档间的转换,如何标记PDF文件,如何使用表单和图表等等。
第四章:使用安全性和签名
▲第一节:设置权限,加密和解密PDF文件
在现有PDF文件上设置权限
要为PDF文件设置权限,请创建DocumentPrivilege该类的对象,并指定要在文档上应用的权限。一旦定义了特权,就将此对象作为参数传递给Document对象的Encrypt(..)方法。以下代码段显示了如何设置PDF文件的权限。
// 文档目录的路径。string dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();//加载源PDF文件using (Document document = new Document(dataDir + "input.pdf")){ //实例化文档权限对象 //对所有权限应用限制 DocumentPrivilege documentPrivilege = DocumentPrivilege.ForbidAll; //仅允许屏幕阅读 documentPrivilege.AllowScreenReaders = true; // 使用用户和所有者密码加密文件。 //需要设置密码,以便一旦用户使用用户密码查看文件, // 仅启用屏幕阅读选项 document.Encrypt("user", "owner", documentPrivilege, CryptoAlgorithm.AESx128, false); //保存更新的文档 document.Save(dataDir + "SetPrivileges_out.pdf");}
使用不同的加密类型和算法加密PDF文件
使用Document对象的Encrypt方法来加密PDF文件,可以将用户密码,所有者密码和权限传递给Encrypt方法。除此之外,还可以传递CryptoAlgorithm枚举的任何值。此枚举提供加密算法和密钥大小的不同组合。最后,使用Document对象的Save方法保存加密的PDF文件。
//文档目录的路径string dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();//打开文档Document document = new Document(dataDir+ "Encrypt.pdf");//加密PDFdocument.Encrypt("user", "owner", 0, CryptoAlgorithm.RC4x128);dataDir = dataDir + "Encrypt_out.pdf";//保存更新的PDFdocument.Save(dataDir);
使用所有者密码解密PDF文件
要解密PDF文件,首先需要创建Document对象并使用所有者密码打开PDF。之后,需要调用Document对象的Decrypt方法。最后,使用Document对象的Save方法保存更新的PDF文件。以下代码段显示了如何解密PDF文件。
// 文档目录的路径.string dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();// 打开文档Document document = new Document(dataDir+ "Decrypt.pdf", "password");//解密PDFdocument.Decrypt();dataDir = dataDir + "Decrypt_out.pdf";//保存更新的PDFdocument.Save(dataDir);
更改PDF文件的密码
如果要更改PDF文件的密码,首先需要使用带有Document对象的所有者密码打开PDF文件。之后,需要调用Document对象的ChangePasswords方法。将当前所有者密码以及新用户密码和新所有者密码传递给此方法。最后,使用Document对象的Save方法保存更新的PDF文件。
//文档目录的路径string dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();//打开文档Document document = new Document(dataDir+ "ChangePassword.pdf", "owner");//更改密码document.ChangePasswords("owner", "newuser", "newowner");dataDir = dataDir + "ChangePassword_out.pdf";//保存更新的PDFdocument.Save(dataDir);
推荐阅读:【干货来袭】Aspose.PDF示例资源最全分享!
*悦满中秋 · 购享好礼,现在购买Aspose系列产品即可领取精美礼品哟,更多活动详情可咨询在线客服了解哦~
ASPOSE技术交流QQ群()已开通,各类资源及时分享,欢迎交流讨论!
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!