iTextSharp for PDF - 如何添加文件附件?

时间:2010-06-09 15:22:25

标签: c# pdf pdf-generation itextsharp itext

我正在使用iTextSharp在C#中创建PDF文档。我想将另一个文件附加到PDF。我试图这样做有很多麻烦。示例here显示了一些注释,显然是附件。

这是我尝试过的:

writer.AddAnnotation(its.pdf.PdfAnnotation.CreateFileAttachment(writer, new iTextSharp.text.Rectangle(100,100,100,100), "File Attachment", its.pdf.PdfFileSpecification.FileExtern(writer, "C:\\test.xml")));

那么,会发生什么呢?它会在PDF上添加注释(显示为一个小注释语音气球),这是我不想要的。 test.xml显示在Adobe Reader的附件窗格中,但无法读取或保存,并且其文件大小未知,因此可能永远无法正确附加。

有什么建议吗?

1 个答案:

答案 0 :(得分:7)

好吧,我有一些代码可以附加它:

its.Document PDFD = new its.Document(its.PageSize.LETTER);
its.pdf.PdfWriter writer;
writer = its.pdf.PdfWriter.GetInstance(PDFD, new FileStream(targetpath, FileMode.Create));
its.pdf.PdfFileSpecification pfs = its.pdf.PdfFileSpecification.FileEmbedded(writer, "C:\\test.xml", "New.xml", null);
writer.AddFileAttachment(pfs);

其中“its”=“iTextSharp.text”

现在阅读附件!