Gemeinsame Rendering-Dienstprogramme

Gemeinsame Rendering-Dienstprogramme

Gemeinsame Rendering-Hilfsprogramme

Aspose.Page FOSS für Python stellt eine Reihe von niedrigstufigen Rendering-Hilfsprogrammen bereit, die intern von PsDocument und XpsDocument verwendet werden. Diese Komponenten können auch direkt verwendet werden, wenn eine präzise Kontrolle über die Ausgabe erforderlich ist.


RenderModelBuilder

RenderModelBuilder erstellt ein RenderDocument schrittweise. Rufen Sie begin_page() auf, um eine Seite zu beginnen, fügen Sie Zeichenbefehle hinzu und rufen Sie dann end_page() auf. Rufen Sie document() auf, um das fertiggestellte RenderDocument abzurufen.

from aspose.page.render.model import RenderModelBuilder

builder = RenderModelBuilder()
builder.begin_page(595, 842)
builder.end_page()
doc = builder.document()

Verfügbare Zeichenmethoden: add_path(), add_text(), add_image(), clip(), save_state() und restore_state().


PdfWriter

PdfWriter serialisiert ein RenderDocument zu PDF 1.4 Bytes. Es erfordert ein PdfMetadata Instanz. Siehe PDF-Ausgabe für Details.


RasterRenderer

RasterRenderer rendert ein RenderDocument zu einem RasterSurface — ein In-Memory RGBA-Pixelpuffer. Der RasterSurface bietet get_pixel(), set_pixel(), width und height.

from aspose.page.render.model import RenderModelBuilder
from aspose.page.image.raster_renderer import RasterRenderer

builder = RenderModelBuilder()
builder.begin_page(400, 300)
builder.end_page()
doc = builder.document()

renderer = RasterRenderer()
surface = renderer.render(doc, page_index=0)
print(f"Pixels: {surface.width}x{surface.height}")

Tipps und bewährte Vorgehensweisen

  • Verwenden Sie RenderModelBuilder, wenn Sie ein Dokument aus Zeichenprimitive erstellen müssen.
  • Verwenden Sie PdfWriter zusammen mit einem RenderDocument für die benutzerdefinierte PDF-Erstellung ohne Quelldatei.
  • Der Pixelzugriff von RasterSurface ist über get_pixel() und set_pixel() verfügbar.

API Reference Zusammenfassung

Klasse / MethodeBeschreibung
RenderModelBuilder.begin_page(width, height)Eine neue Seite starten
RenderModelBuilder.end_page()Schließe die aktuelle Seite ab
RenderModelBuilder.document()Rufe das fertiggestellte RenderDocument ab
PdfWriter.write(document)Serialisiere RenderDocument in PDF-Bytes
RasterRenderer.render(document, page_index)Rendere eine Seite zu RasterSurface
RasterSurface.widthBreite der Oberfläche in Pixeln
RasterSurface.heightHöhe der Oberfläche in Pixeln

Siehe auch

 Deutsch