Indhold
ITextSharp er en del af iText, et gratis kode Java-bibliotek til generering af PDF-filer. Det blev udviklet i C # til .NET platformen. PDF-filer er dokumenter i fast størrelse, der ofte bruges til at levere udskrivbart indhold på websteder.
retninger
Konverter et HTML-dokument til PDF (filbillede af Alex White fra Fotolia.com)-
Åbn en C # editor.
-
Opret en C # -fil og tilføj koden nedenfor.
-
Brug et "navneområde" til at ringe til iTextSharp biblioteket:
ved hjælp af iTextShart.text; ved hjælp af iTextSharp.text.pdf;
-
Ring til indlejringsklassen i iTextSharp og indstil StringBuilder til at tømme:
Dokumentdokument = nyt dokument (PageSize.A4, 80, 50, 30, 65); StringBuilder strData = ny StringBuilder (string.Empty);
-
Tilføj en sti til HTML, der skal genereres fra GridView-indhold:
streng strHTMLpath = Server.MapPath ("MyHTML.html");
-
Indstil stien til konstruktionen af PDF-filen:
streng strPDFpath = Server.MapPath ("MyPDF.pdf");
-
Ring dataene i HTML-filen og behandle filen:
StringWriter sw = ny StringWriter (); sw.WriteLine (Environment.NewLine); sw.WriteLine (Environment.NewLine); sw.WriteLine (Environment.NewLine); sw.WriteLine (Environment.NewLine); HtmlTextWriter htw = ny HtmlTextWriter (sw); gvSerchResult.AllowPaging = false; gvSerchResult.AllowSorting = false; BindGridView (); gvSerchResult.RenderControl (htw);
StreamWriter strWriter = ny StreamWriter (strHTMLpath, false, Encoding.UTF8); strWriter.Write ("> "+ htw.InnerWriter.ToString () +" "); strWriter.Close (); strWriter.Dispose ();
-
Brug "parseren" til at konvertere HTML-indhold til en PDF-fil:
iTextSharp.text.html.simpleparser. StyleSheet styles = ny iTextSharp.text.html.simpleparser.StyleSheet (); styles.LoadTagStyle ("ol", "leading", "16,0"); PdfWriter.GetInstance (dokument, nyt FileStream (strPDFpath, FileMode.Create)); document.Open ();
-
Indstil skrifttyperne for elementerne på siden og tilføj elementer til den:
ArrayList objekter; 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 (); objekter = iTextSharp.text.html.simpleparser. HTMLWorker.ParseToList (ny StreamReader (strHTMLpath, Encoding.Default), stilarter); for (int k = 0; k <objekter.Count; k ++) {document.Add ((IElement) objekter [k]); }
-
Ryd hukommelsesvariablerne og luk filerne:
{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 (); hvis (File.Exists (Server.MapPath ("~ /" + strPDFpath))) {File.Delete (Server.MapPath ("~ /" + strPDFpath)); }}
-
Kør C # -filen for at oprette PDF-filen fra HTML-filen.
Hvad du har brug for
- C # Editor