如何渲染 WebGL 网站
WebGL 是在网页浏览器中创建交互式 3D 图形的强大工具,但要将这些动态、高度交互式的体验转换成静态 PDF 格式却极具挑战性。将 WebGL 网站渲染为 PDF 需要捕捉 WebGL 上下文生成的视觉内容,并将其转换为适合 PDF 文档的格式。
IronPDF 提供了使用 WebGL 捕捉和渲染网站所需的工具,例如 地图盒 和 WebGL 示例集 .
如何渲染 WebGL 网站
- 下载用于渲染 WebGL 网站的 C# 库
- 设置 单进程 属性为 true
- 更改 ChromeGpuMode 硬件属性
- 在渲染前应用延迟,以确保正确渲染
- 从 URL 渲染 PDF 并保存结果
开始在您的项目中使用IronPDF,并立即获取免费试用。
查看 IronPDF 上 Nuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。
Install-Package IronPdf
考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip
手动安装到你的项目中
下载DLL渲染 WebGL 网站
要启用 WebGL 渲染,您需要配置一些 IronPDF 设置:
- SingleProcess = true。这将强制 Chrome 浏览器在当前进程中执行所有操作,而不是使用子进程。
- ChromeGpuMode = Hardware 模式。
此外,如果网站在渲染之前需要一些延迟才能正常显示,则可以使用 WaitFor.RenderDelay
方法。让我们渲染一个 来自 mapbox 的样本 为例。
: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 容器通常是无头环境,这意味着它们没有图形用户界面 (图形用户界面).WebGL 依靠对 GPU 的访问来渲染图形,而在无头环境中,对 GPU 的访问是有限的或根本不存在。我们的开发人员仍在调查这种可能性。如果您希望在得出结论后收到通知,请联系 support@ironsoftware.com。