彩票走势图

PDF处理控件Aspose.PDF功能推荐:使用C#加密和解密PDF文件

翻译|使用教程|编辑:李显亮|2020-04-29 09:43:47.543|阅读 1429 次

概述:通常,PDF文档使用打开文档所需的密码进行加密。另一方面,您也可以将访问权限限制为各种操作,Aspose的PDF库Aspose.PDF for .NET提供了一些简单的方法,可使用C#和VB.NET。在本文中,我将向您展示如何使用C#以编程方式执行PDF加密和解密。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

PDF加密用于保护PDF文档免遭未经授权的访问。如果PDF文档已加密,则必须对其进行解密才能访问其内容,否则它将无法读取。通常,PDF文档使用打开文档所需的密码进行加密。另一方面,您也可以将访问权限限制为各种操作,例如打印,编辑,复制等。

Aspose的PDF库Aspose.PDF for .NET提供了一些简单的方法,可使用C#和VB.NET。在本文中,我将向您展示如何使用C#以编程方式执行PDF加密和解密,包括以下内容:

  • 加密PDF文档。
  • 更改PDF文档中的安全权限。
  • 解密PDF文档。

近日,.NET版Aspose.PDF升级到v20.4版,添加使用图像文件流作为表格单元格背景的功能,修复PDF转换时的一些问题,感兴趣的朋友可点击下方按钮下载最新版。

点击下载最新版Aspose.PDF for .NET

PDF处理控件Aspose.PDF功能推荐:使用C#加密和解密PDF文件

用C#加密PDF文档

为了加密PDF文件,您需要设置打开和查看文档所需的密码。另外,您必须指定所需的加密算法作为加密方法。.NET的Aspose.PDF支持以下加密方法:

  • 带40位密钥的RC4。
  • 带128位密钥的RC4。
  • 带有128位密钥的AES。
  • 带有256位密钥的AES。

加密PDF文档的步骤

以下是使用C#加密PDF文档的简单步骤。

  • 使用Document类加载PDF文档。
  • 使用Document.Encrypt方法使用密码和加密算法对PDF文档进行加密。
  • 使用Document.Save方法保存加密的PDF文档。

以下代码示例显示了如何使用C#加密PDF文档。

// Open document
Document document = new Document("Encrypt.pdf");
// Encrypt PDF  
document.Encrypt("user_password", "owner_password", 0 /*permissions*/, CryptoAlgorithm.RC4x128);
// Save updated PDF
document.Save("Encrypted PDF.pdf");

当在Adobe Reader中打开此加密的PDF文档时,它将弹出以下对话框。

PDF处理控件Aspose.PDF功能推荐:使用C#加密和解密PDF文件

在C#中更改PDF文件的安全权限

Aspose.PDF通过限制用户的许可来增强PDF文档的安全性。在这种情况下,可以指定用户允许的操作。以下是可以设置为允许用户的权限的列表。

  • 打印文档 –允许打印文档。
  • 修改内容 –允许修改文档的内容。
  • 提取内容 –允许从文档中复制内容。
  • 修改文本注释 –允许添加或修改文本注释。
  • 填写表格 –允许填写交互式表格字段。
  • 提取具有残疾的内容 –允许提取文本和图形(适用于残疾用户)。
  • 组装文档 –允许插入,旋转或删除页面以及创建书签或缩略图图像。
  • 打印质量 –允许以高分辨率打印文档。

更改PDF文件的安全权限的步骤

以下是更改PDF文档安全权限的步骤。

  • 加载PDF文档。
  • 使用Document.Encrypt方法设置安全权限。
  • 保存加密的PDF文档。

以下代码示例显示了如何使用C#更改PDF文档的权限。

// Open document
Document document = new Document("Encrypt.pdf");
// Encrypt PDF with print permission
document.Encrypt("user_password", "owner_password", Permissions.PrintDocument | Permissions.PrintingQuality, CryptoAlgorithm.RC4x128);
// Save updated PDF
document.Save("Encrypted PDF.pdf");

设置或修改PDF文档特权的另一种方法是使用DocumentPrivilege类。该DocumentPrivilege类允许您定义的权限或特权用户。下面的代码示例演示如何使用C#中的DocumentPrivilege类设置PDF文档的安全权限。

// Open document
Document document = new Document("Encrypt.pdf");
// Apply restrictions on all privileges
DocumentPrivilege privileges = DocumentPrivilege.ForbidAll;
// Allow desired privileges
privileges.AllowScreenReaders = true;
privileges.AllowPrint = true;
// Encrypt PDF
document.Encrypt("user_password", "owner_password", privileges, CryptoAlgorithm.RC4x128, false);
// Save updated PDF
document.Save("Encrypted PDF.pdf");

以下是我们在本节中加密的PDF文档的安全性详细信息。

PDF处理控件Aspose.PDF功能推荐:使用C#加密和解密PDF文件

使用C#解密PDF文档

为了解密PDF文档,您必须具有该文档的用户或所有者密码。以下是解密PDF文档的简单步骤:

  • 通过指定用户或所有者的密码,使用Document类加载PDF文档。
  • 调用Document.Decrypt()方法。
  • 保存解密的PDF文档。

以下代码示例显示了如何使用C#解密PDF文档。

// Open document by specifying its user's or owner's password
Document document = new Document("Encrypted PDF.pdf", "user_password");
// Decrypt PDF  
document.Decrypt();
// Save updated PDF
document.Save("Decrypted PDF.pdf");

还想要更多吗?您可以点击阅读
【2019 · Aspose最新资源整合】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP