コンテンツ
ITextSharpはiText、PDFを生成するためのフリーコードのJavaライブラリの一部です。 .NETプラットフォーム用にC#で開発されました。 PDFは、Webサイトで印刷可能なコンテンツを提供するためによく使用される固定サイズの文書です。
説明書
HTML文書をPDFに変換する (Fotolia.comからのAlex Whiteによるファイル画像)-
C#エディタを開きます。
-
C#ファイルを作成して以下のコードを追加します。
-
iTextSharpライブラリを呼び出すには、 "名前空間"を使用します。
iTextShart.textを使用する。 iTextSharp.text.pdfを使用する。
-
iTextSharpの埋め込みクラスを呼び出し、StringBuilderを空に設定します。
ドキュメントドキュメント=新しいドキュメント(PageSize.A4、80、50、30、65)。 StringBuilder strData = new StringBuilder(string.Empty);
-
GridViewコンテンツから生成されるHTMLのパスを追加します。
string strHTMLpath = Server.MapPath( "MyHTML.html");
-
PDFファイルの構成へのパスを設定します。
文字列strPDFpath = Server.MapPath( "MyPDF.pdf");
-
HTMLファイルのデータを呼び出してファイルを処理します。
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( "> "+ htw.InnerWriter.ToString()+" "); strWriter.Close(); strWriter.Dispose();
-
HTMLコンテンツをPDFに変換するには、「パーサー」を使用します。
iTextSharp.text.html.simpleparser。 StyleSheet styles = new iTextSharp.text.html.simpleparser.StyleSheet(); styles.LoadTagStyle( "ol"、 "leading"、 "16,0"); PdfWriter.GetInstance(document、new FileStream(strPDFpath、FileMode.Create)); document.Open();
-
ページ上の要素のフォントを設定し、それにアイテムを追加します。
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(新しいStreamReader(strHTMLpath、Encoding.Default)、styles); for(int k = 0; k <objects.Count; k ++){document.Add((IElement)objects [k]); }
-
メモリ変数をクリアしてファイルを閉じます。
{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)); }}
-
C#ファイルを実行して、HTMLファイルからPDFファイルを作成します。
必要なもの
- C#エディタ