如何渲染 WebGL 网站
WebGL 是一个强大的工具,用于在网页浏览器中创建交互式 3D 图形,但将这些动态的、高度交互式的体验转换成静态的 PDF 格式可能具有挑战性。 将 WebGL 网站渲染为 PDF 涉及捕获 WebGL 上下文生成的视觉内容,并将其转换为适合 PDF 文档的格式。
IronPDF 提供了捕获和渲染使用 WebGL 的网站(如 Mapbox 和 WebGL Samples collection)所需的工具。
开始使用IronPDF
立即在您的项目中开始使用IronPDF,并享受免费试用。
如何渲染 WebGL 网站
- 下载 IronPDF C# 库
- 将SingleProcess属性设置为true
- 将ChromeGpuMode属性更改为硬件
- 在渲染前应用延迟,以确保正确渲染
- 从 URL 渲染 PDF 并保存结果
渲染 WebGL 网站
要启用 WebGL 渲染,您需要配置一些 IronPDF 设置:
- SingleProcess = true。 这迫使Chrome在当前进程中执行所有操作,而不是使用子进程。
ChromeGpuMode = Hardware 模式。
此外,如果网站在渲染前需要一些延迟才能正确显示,您可以使用
WaitFor.RenderDelay
方法。 让我们为示例渲染一个来自Mapbox的GeoJSON图层的示例。
:path=/static-assets/pdf/content-code-examples/how-to/render-webgl-render-webgl.cs
using IronPdf;
// Configure IronPdf settings
IronPdf.Installation.SingleProcess = true;
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Hardware;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set delay before rendering
renderer.RenderingOptions.WaitFor.RenderDelay(5000);
// Render from URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://docs.mapbox.com/mapbox-gl-js/example/geojson-layer-in-slot/");
pdf.SaveAs("webGL.pdf");
Imports IronPdf
' Configure IronPdf settings
IronPdf.Installation.SingleProcess = True
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Hardware
Dim renderer As New ChromePdfRenderer()
' Set delay before rendering
renderer.RenderingOptions.WaitFor.RenderDelay(5000)
' Render from URL
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://docs.mapbox.com/mapbox-gl-js/example/geojson-layer-in-slot/")
pdf.SaveAs("webGL.pdf")
输出 PDF
目前无法在 Docker 环境中渲染 WebGL。在 Docker 上渲染 WebGL 可能具有挑战性,因为 Docker 容器通常是无头环境,意味着它们没有图形用户界面(GUI)。 WebGL 依赖于访问 GPU 来渲染图形,在无头环境中,对 GPU 的访问有限或不存在。 我们的开发者仍在调查这一可能性。 如果您希望在得出结论后收到通知,请联系support@ironsoftware.com。