Cookie Consent by Free Privacy Policy Generator
Privacy
Polipone
<febbraio 2025>
lunmarmergiovensabdom
272829303112
3456789
10111213141516
17181920212223
242526272812
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