IRONSOFTWAREHOME
產品比較

在 ASP.NET MVC 中生成 PDF:iTextSharp vs IronPDF 指南

Curtis Chau
Curtis Chau
Updated: 2026年7月5日

交互地圖、3D控制面板和使用WebGL構建的模型查看器在瀏覽器中看起來很棒,但持份者通常需要固定的、可分享的版本:報告中的地圖快照、批准包中的3D設計、存檔中的模擬結果。IronPDF在C#中將GPU加速的WebGL內容捕獲為靜態PDF,保留場景渲染時的視覺狀態。

商業問題

一個物流工具在Mapbox地圖上顯示路線,房地產應用顯示3D地形,工程應用在瀏覽器中渲染CAD模型。 每一個都需要一個PDF版本用於報告、記錄或沒有存取實時應用的接收者。 普通截圖質量低且手動,而標準HTML到PDF渲染不能捕獲依賴於GPU的WebGL。

配置渲染

WebGL捕獲需要三個設置:單程模式、硬體GPU模式以及場景在捕獲前完成渲染的延遲。

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");
C#

結果精確捕獲地圖、圖表或模型的外觀,適合於文件、報告和存檔。

需要計劃的要點

此功能要求真實環境條件,並且他們決定它是否適合於給定的部署。

  • 需要真實GPU: 硬體GPU模式是必需的。 軟體渲染無法處理著色器、紋理和3D變換,因此主機需要一個當前驅動程式相容的GPU。
  • 不支援Docker: WebGL渲染在標準的無頭Docker容器中無法工作,因為其GPU存取受限。 解決方案是VM或支持GPU的專用伺服器、運行於GPU主機上的微服務,或預渲染場景為靜態圖片。
  • 輸出為快照: PDF在渲染時保留視覺狀態。平移、縮放和其他交互性不被保留,因此更適合文件和存檔而非交互式交付。
  • 調整渲染延遲: 複雜場景需要時間載入。 3000到10000毫秒之間的值是一個合理的測試範圍,因為太短會剪掉渲染,太長則浪費時間。
  • 單程模式是全域性的: 這裡需要它但會影響併發,在高流量服務中需要權衡。

結果

啟用GPU模式和合適的主機後,團隊可以將實時的WebGL地圖、控制面板和3D模型轉化為靜態PDF,並用於報告和存檔。 完整的配置和故障排除步驟可以在render WebGL指南中找到。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立