iTextSharp: HTML から PDF への変換ガイド
このガイドでは、iTextSharp ライブラリを使用して HTML コンテンツを PDF ドキュメントに変換するための包括的なチュートリアルを提供します。 HTML と PDF の主な違い、iTextSharp 内での HTML 解析の仕組みを調べ、実用的なコーディング例を示します。
HTML と PDF: 根本的な違い
コードに入る前に、HTML と PDF の主要な違いを理解することが重要です。 HTML (Hypertext Markup Language) は Web ページのコンテンツを構造化し、視覚的なレンダリングをブラウザーに依存します。 逆に、PDF (Portable Document Format) は、固定レイアウト、フォント、グラフィックスを備えた自己完結型のドキュメント形式であり、さまざまなプラットフォーム間で一貫した表示が保証されます。
HTML 解析における iTextSharp の役割
iTextSharp は、HTML 解析機能を通じてこれらの形式間のギャップを埋めます。 HTMLWorker
(およびより新しい XMLWorker
) を利用して HTML 文字列から情報を抽出し、PDF 互換の要素に変換します。
実践例: HTML から PDF への変換
次のコード スニペットは、iTextSharp を使用した基本的な HTML から PDF への変換を示しています。
<code class="language-csharp">// Assuming iTextSharp libraries are imported byte[] bytes; using (var ms = new MemoryStream()) { using (var doc = new Document()) { using (var writer = PdfWriter.GetInstance(doc, ms)) { doc.Open(); // HTML content to convert (example) var html = @"<p>This <em>is</em> a sample.</p>"; // (Further code to parse the HTML using HTMLWorker or XMLWorker would go here) doc.Close(); } } bytes = ms.ToArray(); }</code>
このコードは、MemoryStream
、Document
、および PdfWriter
をセットアップします。 その後、HTML コンテンツが処理されます (簡潔にするために HTMLWorker
または XMLWorker
を使用した詳細な解析は省略されていますが、次の重要なステップです)。 最後に、PDF が生成されます。
高度な考慮事項
CSS サポート: XMLWorker
は、インラインおよび外部 CSS スタイルシートの両方に対する優れたサポートを提供し、PDF の視覚的なプレゼンテーションをより正確に制御できるようにします。
CSS Break モジュール: CSS Break モジュール レベル 3 (css-break-3) は、HTML から PDF への変換に対する標準化されたアプローチを提供し、レイアウトの精度とページネーションを向上させます。 まだ候補者としての推奨ではありますが、有望な展開です。
フレームワークの独立性: iTextSharp は HTML 解析のみを処理することに注意してください。 ASP.NET MVC や Razor などのフレームワークから HTML を抽出するには、別のメカニズムが必要です。
このガイドでは、HTML から PDF への変換に iTextSharp を使用する方法の基礎を説明します。 ここで説明するテクニックをマスターすると、この強力なライブラリをプロジェクトで効果的に活用できます。
以上がiTextSharp を使用して HTML を PDF に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。