Utilités de rendering communes
Utilités de rendering communes
Aspose.Page FOSS for Python exposes a set of lower-level rendering utilities used Internièrement par PsDocument et XpsDocument.Ces composants peuvent également être utilisés directement. Lorsque le contrôle précis de la production est nécessaire.
RenderModelBuilder
RenderModelBuilder Construire A RenderDocument Encore plus. appeler begin_page() pour démarrer une page, ajouter des commandes de dessin, puis appeler end_page().- appeler document() à Récupérer le complet RenderDocument.
from aspose.page.render.model import RenderModelBuilder
builder = RenderModelBuilder()
builder.begin_page(595, 842)
builder.end_page()
doc = builder.document()Les méthodes de dessin disponibles : add_path(), add_text(), add_image(), clip(), save_state(),et restore_state().
PdfWriter
PdfWriter sérialiser A RenderDocument PDF à 1.4 bytes. il faut un PdfMetadata La Voir. voir PDF sortie Pour les détails.
RasterRenderer
RasterRenderer Rendez-vous à RenderDocument à A RasterSurface - Un RGBA en mémoire Pixel de la bouffée, le RasterSurface Fournir get_pixel(), set_pixel(), width,et 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}")Conseils et meilleures pratiques
- Utiliser
RenderModelBuilderQuand vous devez construire un document à partir de dessiner des primitives. - Utiliser
PdfWriterAvec ARenderDocumentPour la génération PDF personnalisée sans fichier source. RasterSurfaceL’accès au pixel est disponible viaget_pixel()etset_pixel().
Le résumé de référence API
| Classes / Méthodes | Description |
|---|---|
RenderModelBuilder.begin_page(width, height) | Démarrer une nouvelle page |
RenderModelBuilder.end_page() | Fin de la page actuelle |
RenderModelBuilder.document() | Retraite le document de render complet |
PdfWriter.write(document) | Sérialiser RenderDocument à des bytes PDF |
RasterRenderer.render(document, page_index) | Render une page à RasterSurface |
RasterSurface.width | Surface largeur en pixels |
RasterSurface.height | Surface en pixels |