仅使用iTextSharp加密嵌入式文件

时间:2019-07-05 08:13:21

标签: c# itext

我已经编写了将文件附加到我的PDF的代码,但我只想对该嵌入式文件进行加密。但是当我设置嵌入式文件加密时,整个PDF都会被加密。这是我的代码:

string[] packageitems = { @"C:\Users\pc\Documents\PDF Embed\1\books.xml" };
            try
            {
                byte[] USER = System.Text.Encoding.ASCII.GetBytes("abc");
                byte[] OWNER = System.Text.Encoding.ASCII.GetBytes("xyz");
                PdfReader reader = new PdfReader(@"C:\Users\pc\Documents\PDF Embed\1\Sample4.pdf");
                FileStream outputstream = new FileStream(@"E:\abc.pdf", FileMode.Create, FileAccess.Write, FileShare.None);



            PdfStamper stamp = new PdfStamper(reader, outputstream);

            PdfWriter attachment = stamp.Writer;
            attachment.SetEncryption(USER, OWNER, 0, PdfWriter.EMBEDDED_FILES_ONLY);
            PdfFileSpecification pdfAttch = PdfFileSpecification.FileEmbedded(attachment, packageitems[0], packageitems[0], null);
            stamp.AddFileAttachment(packageitems[0], pdfAttch);
            stamp.Close();

        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }

0 个答案:

没有答案