2009-07-28 8 views
7

Je dois joindre un pdf que j'ai créé en mémoire à un email. Les pièces jointes peuvent prendre un flux. Je crois donc que je dois convertir un objet Document iTextSharp en flux. Comment puis je faire ça? J'ai essayé de sérialiser l'objet Document dans un flux mais il n'est pas "marqué comme sérialisable".iTextSharp - Comment convertir un document en octet []

Répondre

17

Voici un exemple de code

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(); 
}