ATTENZIONE: Questo sito impiega diversi tipi di cookies. Alla pagina MAGGIORI INFORMAZIONI è possibile avere informazioni aggiuntive. Cliccando su ACCETTO o continuando a navigare sul sito acconsenti al loro utilizzo.
<marzo 2023>
lunmarmergiovensabdom
272812345
6789101112
13141516171819
20212223242526
272829303112
3456789
Immagini  

Write to PDF con iTextSharp.dll

Per creare un PDF a partire dal contenuto di una pagina HTML, il metodo più semplice è quello di usare la libreria iTextSharp.dll
Aggiungere alla pagina un controllo di tipo Panel chiamato pdfPanel
Inserire nel Panel tutti gli oggetti che vogliamo vengano poi inviati al PDF, esattamente nella posizione che ci piace
Aggiungere un Button fuori dal Panel pdfPanel e all'evento click inserire il codice seguente
E' importante anche aggiungere l'override dell'evento VerifyRenderingInServerForm e inserire nella direttiva @Page l'attributo EnableEventValidation="false"

protected void btnSave_Click(object sender, EventArgs e)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=print.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
pdfPanel.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();
}

public override void VerifyRenderingInServerForm(Control control)
{
  
//
}

Notifiche