Inhalt
ITextSharp ist Teil von iText, einer kostenlosen Java-Bibliothek zum Generieren von PDF-Dateien. Es wurde in C # für die .NET-Plattform entwickelt. PDFs sind Dokumente mit festem Format, die häufig zur Bereitstellung von druckfähigem Inhalt auf Websites verwendet werden.
Anweisungen
Konvertieren Sie ein HTML-Dokument in PDF (Dateibild von Alex White von Fotolia.com)-
Öffnen Sie einen C # -Editor.
-
Erstellen Sie eine C # -Datei und fügen Sie den Code unten hinzu.
-
Verwenden Sie einen "Namespace", um die iTextSharp-Bibliothek aufzurufen:
using iTextShart.text; using iTextSharp.text.pdf;
-
Rufen Sie die Einbettungsklasse in iTextSharp auf und setzen Sie den StringBuilder auf leer:
Dokument Dokument = neues Dokument (PageSize.A4, 80, 50, 30, 65); StringBuilder strData = neuer StringBuilder (string.Empty);
-
Fügen Sie einen Pfad für HTML hinzu, der aus GridView-Inhalten generiert werden soll:
String strHTMLpath = Server.MapPath ("MyHTML.html");
-
Legen Sie den Pfad zum Aufbau der PDF-Datei fest:
string strPDFpath = Server.MapPath ("MyPDF.pdf");
-
Rufen Sie die Daten in der HTML-Datei auf und verarbeiten Sie die Datei:
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 = neuer StreamWriter (strHTMLpath, false, Encoding.UTF8); strWriter.Write ("> "+ htw.InnerWriter.ToString () +" "); strWriter.Close (); strWriter.Dispose ();
-
Verwenden Sie den "Parser", um HTML-Inhalte in eine PDF-Datei zu konvertieren:
iTextSharp.text.html.simpleparser. StyleSheet styles = new iTextSharp.text.html.simpleparser.StyleSheet (); styles.LoadTagStyle ("ol", "führende", "16,0"); PdfWriter.GetInstance (document, new FileStream (strPDFpath, FileMode.Create)); document.Open ();
-
Legen Sie die Schriftarten für die Elemente auf der Seite fest und fügen Sie Elemente hinzu:
ArrayList-Objekte; 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 (neuer StreamReader (strHTMLpath, Encoding.Default), Stile); for (int k = 0; k <objects.Count; k ++) {document.Add ((IElement) objects [k]); }
-
Löschen Sie die Speichervariablen und schließen Sie die Dateien:
{document.Close (); Response.Write (Server.MapPath ("~ /" + strPDFpath)); Response.ClearContent (); Response.ClearHeaders (); Response.AddHeader ("Content-Disposition", "attachment; Dateiname =" + strPDFpath); Response.ContentType = "Anwendung / Oktettstrom"; Response.WriteFile (Server.MapPath ("~ /" + strPDFpath)); Response.Flush (); Response.Close (); if (File.Exists (Server.MapPath ("~ /" + strPDFpath))) {File.Delete (Server.MapPath ("~ /" + strPDFpath)); }}
-
Führen Sie die C # -Datei aus, um die PDF-Datei aus der HTML-Datei zu erstellen.
Was du brauchst
- C # -Editor