Cookie Consent by Free Privacy Policy Generator
Privacy
Polipone
<novembre 2024>
lunmarmergiovensabdom
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678
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