C# 将Word转为PDF时,设置PDF文档保护

时间:2024-02-24 12:25:21

本文以C#代码示例展示如何将Word转为PDF时,设置PDF文档保护,可设置PDF文档打开密码保护以及权限密码保护。附VB.NET代码,有需要可供参考。

程序环境:

1.Word测试文档:.docx

2. .NetFramework 4.8

3. 程序集引用:程序中需引用spire.doc.dll和spire.pdf.dll。注意这里的两个dll均来自于同一个spire.doc for .net中的文件夹路径,如本次使用的版本为9.6的包,即,两个dll文件路径为:

C:\Program Files (x86)\e-iceblue\Spire.Doc\Bin\NET4.0\Spire.Doc.dll

C:\Program Files (x86)\e-iceblue\Spire.Doc\Bin\NET4.0\Spire.Pdf.dll

dll引用结果如图:

C#

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

namespace WordToPDFAndEncrypt_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载Word测试文档
            Document doc = new Document();
            doc.LoadFromFile("test.docx");

            //转为PDF时,设置PDF打开密码和权限密码
            ToPdfParameterList topdf = new ToPdfParameterList();
            topdf.PdfSecurity.Encrypt("open", "permission", PdfPermissionsFlags.Print | PdfPermissionsFlags.CopyContent, PdfEncryptionKeySize.Key128Bit);
            

            //将文档保存为PDF格式
            doc.SaveToFile("result.pdf", topdf);
            System.Diagnostics.Process.Start("result.pdf");
        }
    }
}

VB.NET

Imports Spire.Doc
Imports Spire.Pdf.Security

Namespace WordToPDFAndEncrypt_PDF
    Class Program
        Private Shared Sub Main(args As String())
            \'加载Word测试文档
            Dim doc As New Document()
            doc.LoadFromFile("test.docx")

            \'转为PDF时,设置PDF打开密码和权限密码
            Dim topdf As New ToPdfParameterList()
            topdf.PdfSecurity.Encrypt("open", "permission", PdfPermissionsFlags.Print Or PdfPermissionsFlags.CopyContent, PdfEncryptionKeySize.Key128Bit)


            \'将文档保存为PDF格式
            doc.SaveToFile("result.pdf", topdf)
            System.Diagnostics.Process.Start("result.pdf")
        End Sub
    End Class
End Namespace

 

执行程序,生成的文档路径为程序项目文件夹路径,即C:\Users\Administrator\Documents\Visual Studio 2013\Projects\Doc2PDF\WordToPDFAndEncrypt_PDF\bin\Debug\result.pdf,路径也可以自定义为其他路径。打开生成的PDF文件后,提示需输入密码,如下图:

输入密码打开文档后,也可以查看对PDF文档保护设置,如图:

 

—End—