HTML内のJavaScriptをPDFに変換
IronPDFを使用すると、ユーザーはHTMLコンテンツからPDFファイルを作成できますが、単なる純粋なHTMLコンテンツだけでなく、カスタムCSSやJavaScriptを含むHTMLもPDFに変換できます。 HTMLコンテンツ内でJavaScriptを使用することで、例えば、画像のようなアセットを外部アセットとして読み込むのではなく、HTML文字列内に直接埋め込むことができます。 これを達成するために必要なのは、ChromePdfRenderer
クラスとその RenderingOptions
プロパティだけです。
5 Steps to Rendering HTML with JavaScript to PDF in C#
const string htmlWithJavaScript = "...."
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
- renderer.RenderingOptions.WaitFor.JavaScript();
var pdfJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript);
文字列変数内に、JavaScriptコードを含む<script>
タグを含むHTML文字列を作成しました。これを使用してPDFを作成します。 スクリプトタグを使用すると、文字列のどのセクションがJavaScriptであるかを示すことになり、後でRenderingOptionsプロパティを使用して有効にされます。 これにより、画像を埋め込み、レンダリングされたPDFにインタラクティビティを維持することができます。
new ChromePdfRenderer();
を使用して、HTMLコンテンツをPDFにレンダリングするChromePdfRendererクラスの新しいインスタンスをインスタンス化します。 このクラスを使用すると、レンダリングされたPDFファイルがピクセルパーフェクトで出力され、最終結果にはカスタムJavaScriptやCSSコンテンツが正しく維持されることを安心できます。
次に、RenderingOptions
プロパティをChromePdfRendererクラス内で使用して、新しいPDFがレンダリングされる前にJavaScriptを実行できるようにします。 RenderingOptions.WaitFor
行は、プログラムがレンダリングプロセスを続行する前にJavaScriptの実行が完了するのを確実に待つことを保証します。 レンダリングは、JavaScriptコードがwindow.ironpdf.notifyRender()
メソッドを実行すると開始されます。 RenderingOptionsプロパティは、作成したChromePdfRendererインスタンスに割り当てられ、このレンダラーで作成されるPDFにオプションが使用されるようにします。
renderer.RenderHtmlAsPdf(...)
メソッドは、PDFドキュメントの実際のレンダリングを処理します。 このメソッドにJavaScriptを含むHTML文字列を渡すことにより、すべてのHTMLおよびJavaScript要素を含む高品質のPDFとしてレンダリングできます。 これは、新しくレンダリングされたPDFを保存する新しいPdfDocument
オブジェクトに保存され、この場合、pdfJavaScriptと呼ばれます。 最後に、この新しいPDFをSaveAs
メソッドを使用して保存できます。
例やサンプルコード、ファイルを含むハウツーガイドをご覧になるには、こちらをクリックしてください。