How to Use Common Rendering Utilities in Python

How to Use Common Rendering Utilities in Python

Overview

RenderModelBuilder, PdfWriter, and RasterRenderer are the low-level rendering components shared across all Aspose.Page FOSS conversion pipelines. Use RenderModelBuilder to construct a RenderDocument programmatically, then pass it to PdfWriter or RasterRenderer to produce PDF bytes or a RasterSurface respectively.

Build a RenderDocument

from aspose.page.render.model import RenderModelBuilder

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

Write to PDF

from pathlib import Path
from aspose.page.render.model import RenderModelBuilder
from aspose.page.pdf.writer import PdfWriter
from aspose.page.pdf.metadata import PdfMetadata

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

metadata = PdfMetadata(
    title="Doc",
    creator="App",
    producer="Aspose.Page FOSS for Python",
    creation_date="D:20260609000000",
    mod_date="D:20260609000000",
    trapped=False,
)
Path("output.pdf").write_bytes(PdfWriter(metadata).write(doc))

Render to RasterSurface

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(surface.width, surface.height)

See Also

 English