Contenuto
ITextSharp fa parte di iText, una libreria Java di codice gratuito per la generazione di PDF. È stato sviluppato in C # per la piattaforma .NET. I PDF sono documenti di dimensioni fisse spesso utilizzati per fornire contenuti stampabili sui siti Web.
indicazioni
Convertire un documento HTML in PDF (immagine del file di Alex White da Fotolia.com)-
Apri un editor C #.
-
Crea un file C # e aggiungi il codice qui sotto.
-
Utilizzare uno "spazio dei nomi" per chiamare la libreria iTextSharp:
utilizzando iTextShart.text; utilizzando iTextSharp.text.pdf;
-
Chiama la classe di incorporamento in iTextSharp e imposta StringBuilder per svuotare:
Documento documento = nuovo documento (PageSize.A4, 80, 50, 30, 65); StringBuilder strData = new StringBuilder (string.Empty);
-
Aggiungi un percorso per HTML da generare dal contenuto di GridView:
string strHTMLpath = Server.MapPath ("MyHTML.html");
-
Imposta il percorso per la costruzione del file PDF:
string strPDFpath = Server.MapPath ("MyPDF.pdf");
-
Chiama i dati nel file HTML ed elabora il file:
StringWriter sw = new StringWriter (); sw.WriteLine (Environment.NewLine); sw.WriteLine (Environment.NewLine); sw.WriteLine (Environment.NewLine); sw.WriteLine (Environment.NewLine); HtmlTextWriter htw = new HtmlTextWriter (sw); gvSerchResult.AllowPaging = false; gvSerchResult.AllowSorting = false; BindGridView (); gvSerchResult.RenderControl (htw);
StreamWriter strWriter = new StreamWriter (strHTMLpath, false, Encoding.UTF8); strWriter.Write ("& gt ;.
-
Usa il "parser" per convertire il contenuto HTML in un PDF:
iTextSharp.text.html.simpleparser. StyleSheet styles = new iTextSharp.text.html.simpleparser.StyleSheet (); styles.LoadTagStyle ("ol", "leading", "16,0"); PdfWriter.GetInstance (documento, nuovo FileStream (strPDFpath, FileMode.Create)); document.Open ();
-
Imposta i caratteri per gli elementi nella pagina e aggiungi elementi ad esso:
Oggetti ArrayList; styles.LoadTagStyle ("li", "face", "garamond"); styles.LoadTagStyle ("span", "size", "8px"); styles.LoadTagStyle ("body", "font-family", "times new roman"); styles.LoadTagStyle ("body", "font-size", "12px"); document.NewPage (); objects = iTextSharp.text.html.simpleparser. HTMLWorker.ParseToList (nuovo StreamReader (strHTMLpath, Encoding.Default), stili); for (int k = 0; k <objects.Count; k ++) {document.Add ((IElement) objects [k]); }
-
Cancella le variabili di memoria e chiudi i file:
{document.Close (); Response.Write (Server.MapPath ("~ /" + strPDFpath)); Response.ClearContent (); Response.ClearHeaders (); Response.AddHeader ("Content-Disposition", "attachment; filename =" + strPDFpath); Response.ContentType = "application / octet-stream"; Response.WriteFile (Server.MapPath ("~ /" + strPDFpath)); Response.Flush (); Response.Close (); if (File.Exists (Server.MapPath ("~ /" + strPDFpath))) {File.Delete (Server.MapPath ("~ /" + strPDFpath)); }}
-
Esegui il file C # per creare il file PDF dal file HTML.
Cosa ti serve
- C # Editor