ASP.NET MVCでPDFを生成:iTextSharp vs IronPDFガイド
インタラクティブな地図、3Dダッシュボード、WebGL で構築されたモデルビューアーは、ブラウザで素晴らしい見栄えですが、利害関係者は固定された共有可能なバージョンを必要とすることが多いです: レポート内の地図のスナップショット、承認パケット内の3Dデザイン、アーカイブ内のシミュレーション結果など。IronPDF は、C# で GPU 加速された WebGL コンテンツを静的な PDF としてキャプチャし、レンダリング時のシーンの視覚的状態を保持します。
ビジネス問題
物流ツールは Mapbox 地図にルートを表示し、不動産アプリは 3D 地形を表示し、エンジニアリングアプリは CAD モデルをブラウザにレンダリングします。 それぞれはレポート、記録、またはライブアプリケーションへのアクセスがない受取人のために、PDF バージョンが必要です。 通常のスクリーンショットは低品質で手動、標準の HTML-to-PDF レンダリングは GPU に依存する WebGL をキャプチャしません。
レンダーの設定
WebGL キャプチャには、シングルプロセス モード、ハードウェア GPU モード、キャプチャ前にシーンがレンダリングを完了するための遅延の 3 つの設定が必要です。
using IronPdf;
// Required for WebGL: GPU operations must complete in one process
IronPdf.Installation.SingleProcess = true;
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Hardware;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Give the 3D scene time to load and render
renderer.RenderingOptions.WaitFor.RenderDelay(5000);
PdfDocument pdf = renderer.RenderUrlAsPdf("https://docs.mapbox.com/mapbox-gl-js/example/geojson-layer-in-slot/");
pdf.SaveAs("webgl.pdf");
結果は、ドキュメント化、レポート、およびアーカイブに適した、地図、チャート、またはモデルをそのままキャプチャします。
計画すべきポイント
この機能には実際の環境要件があり、特定のデプロイメントに適合するかどうかが決まります。
- 本物の GPU が必要です: ハードウェア GPU モードは必須です。 ソフトウェアレンダリングではシェーダー、テクスチャ、3D 変換を処理できないため、ホストは現在のドライバを備えた互換性のある GPU が必要です。
- Docker はサポートされていません: 標準の Docker コンテナでは、ヘッドレスで GPU アクセスが制限されているため、WebGL のレンダリングは機能しません。 回避策は、VM や専用の GPU 対応サーバー、GPU ホストで動作するマイクロサービス、または静的イメージへのプリレンダリングシーンです。
- 出力はスナップショットです: PDF はレンダリング時の視覚的状態を保持します。パン、ズーム、その他のインタラクティビティは保持されないため、インタラクティブな配信よりもドキュメンテーションとアーカイバルに適しています。
- レンダーの遅延を調整: 複雑なシーンのロードには時間がかかります。 短すぎるとレンダーがクリップされ、長すぎると時間が無駄になるため、3000から10000ミリ秒の値がテストするのに妥当な範囲です。
- シングルプロセス モードはグローバルです: ここでは必要ですが、それは同時実行性に影響を与え、高ボリュームサービスでの検討の価値があります。
結果
GPUモードが有効で適切なホストがあると、チームはライブ WebGL 地図、ダッシュボード、3D モデルを静的な PDF に変換し、レポートやアーカイブに移動させます。 完全な設定およびトラブルシューティングの手順はrender WebGL guideに記載されています。

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。