Εισαγωγή

Εκτός από το υψηλό επίπεδο PsDocument και XpsDocument Ετικέτες: ΚΕΦΑΛΑΙΟ ΣΤΟ ΔΙΑΔΙΚΑΣΜΑ Η Python παρουσιάζει ένα σύνολο εργαλείων χαμηλότερου επιπέδου για την κατασκευή εγγράφων, τη γραφή PDF εξόδου, και να εργαστούν με τα πακέτα XPS προγραμματικά. αυτά τα εργαλεία χρησιμοποιούνται εσωτερικά από τις τάξεις υψηλού επιπέδου και μπορεί επίσης να χρησιμοποιηθεί άμεσα όταν χρειάζεστε ακριβή έλεγχο πάνω Η παραγωγή .

Το άρθρο αυτό καλύπτει RenderModelBuilder, PdfWriter, PdfMetadata, RasterRenderer,και XpsDocumentBuilder — τα κοινά συστατικά που μοιράζονται μεταξύ των αγωγών PS, EPS και XPS.


Δημιουργία εγγράφου Render

RenderModelBuilder Κατασκευάζει A RenderDocument Με την προσέγγιση της σελίδας κύκλου ζωής Ετικέτες: Ξεκινήστε μια σελίδα με begin_page(), προσθέστε εντολές σχεδίασης, στη συνέχεια καλέστε end_page(). Κλήση document() Για να ανακτήσει το ολοκληρωμένο 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()

Οι διαθέσιμες μέθοδοι σχεδίασης περιλαμβάνουν add_path(), add_text(), add_image(), clip(), save_state(),και restore_state().Κλήση set_default_page_size() Πρώτα begin_page() να καθορίσει ένα προεπιλεγμένο μέγεθος που ισχύει για όλες τις επόμενες σελίδες.


Γράψτε ένα έγγραφο Render στο PDF

PdfWriter Αποδέχεται το A PdfMetadata Σειρά και σενάρια α RenderDocument Παρουσιάζει το PDF 1.4 Μπαχί: Πέρασε το A PdfMetadata αντικείμενο με title, creator, producer, creation_date, mod_date,και trapped Τα πεδία, καλέστε write(doc) να παράγει την παραγωγή.

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)

Ράστερ Ρεντερίνγκ

RasterRenderer Ο ΔΗΜΟΣΙΟΓΡΑΦΟΣ Α RenderDocument Για το A RasterSurface - Ένα pixel RGBA μνήμης Μπάμπερτ - Το RasterSurface Παρέχει get_pixel() και set_pixel() Για το Direct Pixel Η πρόσβαση, μαζί με την width και height Η ιδιότητα αυτή είναι ο βασικός μηχανισμός που χρησιμοποιείται. Με to_image() και στις δύο PsDocument και XpsDocument Εξέλιξη PNG ή 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}")

Δημιουργία εγγράφων XPS με προγραμματισμό

XpsDocumentBuilder παρέχει ένα υψηλού επιπέδου API για την κατασκευή πακέτων XPS με προσαρμοσμένη Ετικέτες και μετεωρολογικά στοιχεία. χρησιμοποιήστε create_page() Για να προσθέσετε σελίδες, καλέστε to_document() Για να αποκτήσουν Ένα XpsDocument Μπορεί να εξάγεται σε PDF ή εικόνες raster.

from aspose.page.xps.document import XpsDocument

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

Ξεκινώντας

Σχετικοί Πόροι