Conţinut
ITextSharp face parte din iText, o bibliotecă gratuită de cod Java pentru generarea de fișiere PDF. Acesta a fost dezvoltat în C # pentru platforma .NET. PDF-urile sunt documente de dimensiune fixă adesea folosite pentru a furniza conținut imprimabil pe site-uri web.
instrucțiuni de ghidare
Conversia unui document HTML în format PDF (imagine imagine de Alex White de la Fotolia.com)-
Deschideți un editor C #.
-
Creați un fișier C # și adăugați codul de mai jos.
-
Utilizați un "spațiu de nume" pentru a apela biblioteca iTextSharp:
utilizând iTextShart.text; utilizând iTextSharp.text.pdf;
-
Apelați clasa de încorporare în iTextSharp și setați StringBuilder pentru golire:
Document document = document nou (PageSize.A4, 80, 50, 30, 65); StringBuilder strData = noul StringBuilder (string.Empty);
-
Adăugați o cale de generare a codului HTML din conținutul GridView:
string strHTMLpath = Server.MapPath ("MyHTML.html");
-
Setați calea către construcția fișierului PDF:
șir strPDFpath = Server.MapPath ("MyPDF.pdf");
-
Apelați datele din fișierul HTML și procesați fișierul:
StringWriter sw = nou StringWriter (); sw.WriteLine (Mediu.NewLine); sw.WriteLine (Mediu.NewLine); sw.WriteLine (Mediu.NewLine); sw.WriteLine (Mediu.NewLine); HtmlTextWriter htw = nou HtmlTextWriter (sw); gvSerchResult.AllowPaging = false; gvSerchResult.AllowSorting = false; BindGridView (); gvSerchResult.RenderControl (htw);
StreamWriter strWriter = StreamWriter nou (strHTMLpath, false, Encoding.UTF8); strWriter.Write ("> "+ htw.InnerWriter.ToString () +"); strWriter.Close (); strWriter.Dispose ();
-
Utilizați parserul pentru a converti conținutul HTML într-un PDF:
iTextSharp.text.html.simpleparser. StyleSheet stiluri = nou iTextSharp.text.html.simpleparser.StyleSheet (); styles.LoadTagStyle ("ol", "leading", "16,0"); PdfWriter.GetInstance (document, new FileStream (strPDFpath, FileMode.Create)); document.Open ();
-
Setați fonturile pentru elementele de pe pagină și adăugați elemente la ele:
Obiecte ArrayList; styles.LoadTagStyle ("li", "față", "garamond"); styles.LoadTagStyle ("span", "dimensiune", "8px"); styles.LoadTagStyle ("corp", "font-family", "new roman"); styles.LoadTagStyle ("corp", "font-size", "12px"); document.NewPage (); obiecte = iTextSharp.text.html.simpleparser. HTMLWorker.ParseToList (nou StreamReader (strHTMLpath, Encoding.Default), stiluri); pentru (int k = 0; k <obiecte.Count; k) {document.Add ((IElement) obiecte [k]); }
-
Ștergeți variabilele de memorie și închideți fișierele:
{document.Close (); Response.Write (Server.MapPath ("~ /" + strPDFpath)); Response.ClearContent (); Response.ClearHeaders (); Response.AddHeader ("Content-Disposition", "fișier atașat; nume fișier =" + strPDFpath); Response.ContentType = "aplicație / octet-stream"; Response.WriteFile (Server.MapPath ("~ /" + strPDFpath)); Response.Flush (); Response.Close (); dacă (File.Exists (Server.MapPath ("~ /" + strPDFpath))) {File.Delete (Server.MapPath ("~ /" + strPDFpath)); }}
-
Rulați fișierul C # pentru a crea fișierul PDF din fișierul HTML.
Ce ai nevoie
- C # Editor