tags:

views:

12

answers:

1

Is this even possible? tried several ways and i have no idea how to continue. Using vb.net in vs 2008 and itextsharp

This is my code for creating the pdf.. also have alot of code to fill it

    Dim doc As New Document(iTextSharp.text.PageSize.LETTER, 90, 80, 80, 90)
    Try

        PdfWriter.GetInstance(doc, New FileStream(Server.MapPath("PDF.pdf"),FileMode.Create))

But this saves the pdf.. can i do it any other way?

A: 

I use a MemoryStream to assemble the PDF into thus (sorry in C# but should be easily convertable):

public byte[] GetPDF()
{
    using (MemoryStream ms = new MemoryStream())
    {
        Document document = new Document(PageSize.A4, 38f, 30f, 15f, 35f);
        PdfWriter writer = PdfWriter.GetInstance(document, ms);
        ...
        document.Close();
        return (ms.GetBuffer());
    }
}

Then you can provide a byte stream back to your response stream, in MVC I do this with a FileResult return as follows:

return File(GetPDF(), System.Net.Mime.MediaTypeNames.Application.Pdf, "generated.pdf");
Lazarus