¿Cómo se puede crear PDF en el flujo de memoria en lugar de archivo físico utilizando itextsharp.Crear PDF en memoria en lugar de archivo físico
El siguiente código está creando un archivo pdf real.
lugar, ¿cómo puedo crear un byte [] y almacenarlo en el byte [] para que pueda regresar a través de una función
using iTextSharp.text;
using iTextSharp.text.pdf;
Document doc = new Document(iTextSharp.text.PageSize.LETTER, 10, 10, 42, 35);
PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream("c:\\Test11.pdf", FileMode.Create));
doc.Open();//Open Document to write
Paragraph paragraph = new Paragraph("This is my first line using Paragraph.");
Phrase pharse = new Phrase("This is my second line using Pharse.");
Chunk chunk = new Chunk(" This is my third line using Chunk.");
doc.Add(paragraph);
doc.Add(pharse);
doc.Add(chunk);
doc.Close(); //Close document
PdfWriter no implementa IDisposable por lo que no puede usarlo en una instrucción de uso. Tal vez esto solo esté en la versión que estoy usando (5.0.5) ya que sé que ha habido algunos cambios de clase de la versión 4 – musefan
@musefan, sí, en 5.0.5 ese es el caso. En la versión actual, 5.5, 'PdfWriter' extiende' DocWriter' que implementa 'IDocListener' que extiende' IDisposable'. No sé exactamente cuándo se agregó 'IDisposable' a' IDocListener' pero fue algo después de 5.0.5 y antes de 5.5.0. –