Rendern von WebGL-Seiten
WebGL ist ein leistungsfähiges Werkzeug zur Erstellung interaktiver 3D-Grafiken in Webbrowsern, aber die Konvertierung dieser dynamischen, hochgradig interaktiven Erlebnisse in ein statisches PDF-Format kann eine Herausforderung sein. Beim Rendern einer WebGL-Website in PDF wird der vom WebGL-Kontext erzeugte visuelle Inhalt erfasst und in ein für ein PDF-Dokument geeignetes Format konvertiert.
IronPDF bietet die notwendigen Werkzeuge, um Websites mit WebGL wie Mapbox und die WebGL Samples-Sammlung zu erfassen und darzustellen.
Erste Schritte mit IronPDF
Beginnen Sie noch heute mit der Verwendung von IronPDF in Ihrem Projekt mit einer kostenlosen Testversion.
Rendern von WebGL-Seiten
- Laden Sie die IronPDF C# Bibliothek herunter
- Setzen Sie die Eigenschaft SingleProcess auf true
- Ändern Sie die ChromeGpuMode-Eigenschaft auf Hardware
- Wenden Sie vor dem Rendern eine Verzögerung an, um ein korrektes Rendering zu gewährleisten
- Rendering der PDF-Datei aus der URL und Speichern des Ergebnisses
Rendering von WebGL-Websites
Um WebGL-Rendering zu aktivieren, müssen Sie einige IronPDF-Einstellungen konfigurieren:
- SingleProcess = true. Dadurch wird Chrome gezwungen, alles im aktuellen Prozess auszuführen, anstatt Unterprozesse zu verwenden.
ChromeGpuMode = Hardware Modus.
Zusätzlich können Sie, wenn die Website eine Verzögerung vor dem Rendern erfordert, um ordnungsgemäß angezeigt zu werden, die Methode
WaitFor.RenderDelay
verwenden. Lasst uns ein Beispiel von Mapbox's GeoJSON-Schicht für unser Beispiel rendern.
: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");
Ausgabe PDF
Derzeit ist es nicht möglich, WebGL in einem Docker-Setup zu rendern. Das Rendern von WebGL auf Docker kann herausfordernd sein, da Docker-Container typischerweise headless-Umgebungen sind, was bedeutet, dass sie keine grafische Benutzeroberfläche (GUI) haben. WebGL ist auf den Zugriff auf die GPU angewiesen, um Grafiken zu rendern, und in einer Headless-Umgebung ist der Zugriff auf die GPU begrenzt oder nicht vorhanden. Unsere Entwickler sind noch dabei, diese Möglichkeit zu untersuchen. Wenn Sie benachrichtigt werden möchten, sobald eine Entscheidung getroffen wurde, wenden Sie sich bitte an support@ironsoftware.com.