当前位置 : 主页 > 网络编程 > net编程 >

如何通过C#/VB.NET为 PDF加密和解密

来源:互联网 收集:自由互联 发布时间:2023-09-06
在通过PDF文档格式传送类似于合同或公司机密等重要文件时,为其添加密码可以进一步保证文档的安全,避免内容泄露。​ ​ ​ Free Spire.PDF for.NET ​ ​ 可以轻松实现PDF文档的加密和解

在通过PDF文档格式传送类似于合同或公司机密等重要文件时,为其添加密码可以进一步保证文档的安全,避免内容泄露。​Free Spire.PDF for .NET​ 可以轻松实现PDF文档的加密和解密这两个功能。下面是详细操作步骤和相关代码。

安装

方法一,通过​​NuGet​​安装Free Spire.PDF for .NET:

    依次选择工具>NuGet包管理器>程序包管理器控制台,然后执行以下命令:

    PM> Install-Package FreeSpire.PDF    

方法二,在程序中手动引入Spire.pdf.dll文件:

​​Free Spire.PDF for .NET​​ 下载到本地,解压并安装。安装完成后,打开 Visual Studio创建新项目,在右边的“解决方案资源管理器”中右键点击“引用”,再依次选择“添加引用”> “浏览”,找到安装路径下BIN文件夹中的dll文件,点击“确定”,将其添加引用至程序中。

如何为PDF文档加密

具体操作:

  • 创建一个PdfDocument对象。
  • 使用PdfDocument.LoadFromFile()方法加载示例 PDF 文件。
  • 使用PdfDocument.Security属性获取文档的安全参数。
  • 使用PdfSecurity.Encrypt(string openPassword, string permissionPassword, PdfPermissionsFlags permissions, PdfEncryptionKeySize keySize)方法为 PDF 文档设置开启密码和权限密码加密 PDF 文件。
  • 使用PdfDocument.SaveToFile()方法保存结果文件。

相关代码:

C#:

using Spire.Pdf;
using Spire.Pdf.Security;

namespace EncryptPDF
{
class Program
{
static void Main(string[] args)
{
//创建一个PDF对象
PdfDocument pdf = new PdfDocument();

//加载示例PDF文档
pdf.LoadFromFile("原文档.pdf");

//使用密码加密PDF文件
pdf.Security.Encrypt("open", "permission", PdfPermissionsFlags.Print | PdfPermissionsFlags.CopyContent, PdfEncryptionKeySize.Key128Bit);

//保存结果文档
pdf.SaveToFile("加密.pdf", FileFormat.PDF);
}
}
}

VB.NET:

Imports Spire.Pdf
Imports Spire.Pdf.Security

Namespace EncryptPDF
Friend Class Program
Private Shared Sub Main(ByVal args As String())
'创建一个PDF对象
Dim pdf As PdfDocument = New PdfDocument()

'加载示例PDF文档
pdf.LoadFromFile("原文档.pdf")

'使用密码加密PDF文件
pdf.Security.Encrypt("open", "permission", PdfPermissionsFlags.Print Or PdfPermissionsFlags.CopyContent, PdfEncryptionKeySize.Key128Bit)

'保存结果文档
pdf.SaveToFile("加密.pdf", FileFormat.PDF)
End Sub
End Class
End Namespace

如何通过C#/VB.NET为 PDF加密和解密_C#

如何对加密后的PDF文档进行解密

具体操作:

  • 创建一个PdfDocument对象。
  • 使用PdfDocument.LoadFromFile (string filename, string password)方法加载加密 PDF 文件。
  • 使用 PdfDocument.Security 属性获取文档的安全参数。
  • 通过使用PdfSecurity.Encrypt(string openPassword, string permissionPassword, PdfPermissionsFlags permissions, PdfEncryptionKeySize keySize, string originalPermissionPassword)方法将开启密码和权限密码设置为空来解密 PDF 文件。
  • 使用PdfDocument.SaveToFile() 方法保存结果文件。

相关代码:

C#:

using
Spire.Pdf;
using
Spire.Pdf.Security;

namespace
DecryptPDF
{
class Program
{
static void Main(string[] args)
{
//创建一个 PdfDocument 对象
PdfDocument pdf = new
PdfDocument();

//使用密码加载加密的PDF文件
pdf.LoadFromFile("加密.pdf", "open");

//将密码设置为空以解密PDF
pdf.Security.Encrypt(string.Empty,
string.Empty, PdfPermissionsFlags.Default, PdfEncryptionKeySize.Key128Bit,
"permission");

//保存结果文档
pdf.SaveToFile("解密.pdf", FileFormat.PDF);
}
}
}

VB.NET:

Imports
Spire.Pdf
Imports
Spire.Pdf.Security

Namespace
DecryptPDF
Friend Class Program
Private Shared Sub Main(ByVal args As
String())
'创建一个 PdfDocument 对象
Dim pdf As PdfDocument = New
PdfDocument()

'使用密码加载加密的PDF文件
pdf.LoadFromFile("加密.pdf", "open")

'将密码设置为空以解密PDF
pdf.Security.Encrypt(String.Empty,
String.Empty, PdfPermissionsFlags.[Default], PdfEncryptionKeySize.Key128Bit,
"permission")

'保存结果文档
pdf.SaveToFile("解密.pdf", FileFormat.PDF)
End Sub
End Class
End
Namespace
上一篇:Java Stream的简单示例
下一篇:没有了
网友评论