PDF Output
PDF Output
PdfWriter serializes a RenderDocument to PDF 1.4 bytes. It requires a PdfMetadata
instance that controls the metadata fields embedded in the PDF header.
PdfMetadata
PdfMetadata accepts title, creator, producer, creation_date, mod_date, and
trapped parameters. These are embedded in the PDF /Info dictionary.
from aspose.page.pdf.metadata import PdfMetadata
metadata = PdfMetadata(
title="My Document",
creator="My Application",
producer="Aspose.Page FOSS for Python",
creation_date="D:20260609000000",
mod_date="D:20260609000000",
trapped=False,
)PdfWriter
Instantiate PdfWriter with a PdfMetadata object, then call write(doc) on a
RenderDocument to obtain the PDF bytes.
from aspose.page.render.model import RenderModelBuilder
from aspose.page.pdf.writer import PdfWriter
from aspose.page.pdf.metadata import PdfMetadata
from pathlib import Path
builder = RenderModelBuilder()
builder.begin_page(595, 842)
builder.end_page()
doc = builder.document()
metadata = PdfMetadata(
title="Output",
creator="App",
producer="Aspose.Page FOSS for Python",
creation_date="D:20260609000000",
mod_date="D:20260609000000",
trapped=False,
)
writer = PdfWriter(metadata)
Path("output.pdf").write_bytes(writer.write(doc))Tips and Best Practices
- Pass a
creation_datein PDF format (D:YYYYMMDDHHmmSS) to set a valid creation timestamp. - Set
producerto identify the generating application in PDF metadata viewers. write()returnsbytes— no files are written byPdfWriteritself.
API Reference Summary
| Class / Method | Description |
|---|---|
PdfMetadata | PDF metadata container (title, creator, producer, dates) |
PdfWriter(metadata) | Instantiate with PdfMetadata |
PdfWriter.write(document) | Serialize RenderDocument to PDF bytes |