关于c#:iTextSharp – 如何将Document转换为byte []

iTextSharp - How to convert Document to byte[]

我需要将我在内存中创建的PDF附加到电子邮件中。附件可以采用流。所以我认为我需要将ITextSharp文档对象转换为流。我该怎么做?我尝试将文档对象序列化为流,但它没有"标记为可序列化"。


这是代码示例

1
2
3
4
5
6
7
8
9
10
using (System.IO.MemoryStream ms = new System.IO.MemoryStream())
{
    //creating a sample Document
    iTextSharp.text.Document doc = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 30f, 30f, 30f, 30f);
    iTextSharp.text.pdf.PdfWriter writer = iTextSharp.text.pdf.PdfWriter.GetInstance(doc, ms);
    doc.Open();
    doc.Add(new iTextSharp.text.Chunk("hello world"));
    doc.Close();
    byte[] result = ms.ToArray();
}

查看itext.pdf.pdfwriter。有一些方法采用流。

以下是ASP.NET中的流式处理示例-链接文本