Introdução

Além do alto nível de cooperação, a Comissão tem também um papel importante a desempenhar. PsDocument e a) XpsDocument classes, Aspose.Página FOSS para Python expõe um conjunto de utilitários de nível inferior para a construção de documentos render, escrita PDF Output, e trabalhando com pacotes XPS programaticamente. Estes utilitários são usados internamente O sistema de gestão da informação é um instrumento que pode ser utilizado directamente quando se necessita de controlo preciso sobre a comunicação e o trabalho. a saída.

Este artigo abrange: RenderModelBuilder, PdfWriter, PdfMetadata, RasterRenderer, e XpsDocumentBuilder os componentes comuns compartilhados entre as pipelines PS, EPS e XPS.


Construir um documento de renderização

RenderModelBuilder construção de um RenderDocument incrementalmente, chamando o ciclo de vida da página. Comece uma página com: begin_page(), adicionar comandos de desenho, em seguida, chamar end_page(). Chama-me . document() para recuperar o ficheiro completado. RenderDocument.

from aspose.page.render.model import RenderModelBuilder

builder = RenderModelBuilder()
builder.begin_page(595, 842)
# add paths, text, images here
builder.end_page()
doc = builder.document()

Os métodos de desenho disponíveis incluem: add_path(), add_text(), add_image(), clip(), save_state(), e restore_state().- Ligue. set_default_page_size() antes de begin_page() Para estabelecer um tamanho padrão que se aplica a todas as páginas subsequentes.


Escrever um documento de renderização para PDF

PdfWriter aceita um PdfMetadata instância e serializa um RenderDocument para o PDF 1.4 Passar um PdfMetadata objeto com title, creator, producer, creation_date, mod_date, e trapped campos, em seguida, chamar write(doc) para produzir a saída.

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="My Document",
    creator="My App",
    producer="Aspose.Page FOSS for Python",
    creation_date="D:20260609000000",
    mod_date="D:20260609000000",
    trapped=False,
)
writer = PdfWriter(metadata)
pdf_bytes = writer.write(doc)
Path("output.pdf").write_bytes(pdf_bytes)

Render de raster

RasterRenderer Rende um RenderDocument a uma RasterSurface um pixel RGBA em memória O amortecedor. RasterSurface fornece: get_pixel() e a) set_pixel() para pixel direto acesso, juntamente com: width e a) height Esta é a base do mecanismo utilizado para determinar o valor de uma determinada quantidade de energia. por: to_image() em ambos os lados PsDocument e a) XpsDocument quando produzem um formato PNG ou JPEG.

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"Surface size: {surface.width}x{surface.height}")

Construir documentos XPS de forma programática

XpsDocumentBuilder fornece uma API de alto nível para a construção de pacotes XPS com customizado Páginas e metadados. create_page() para adicionar páginas, em seguida, chamar to_document() para obter e um XpsDocument que podem ser exportados para imagens PDF ou raster.

from aspose.page.xps.document import XpsDocument

xps = XpsDocument.create("My XPS Document")
page = xps.add_page(595, 842)

Começar a Fazer

Recursos relacionados