1. Produkte
  2.   Aspose.Page
  3.   Aspose.Page FOSS for Python

Aspose.Page FOSS for Python

Kostenlose, MIT‑lizenzierte Python-Bibliothek zum Exportieren von PS‑, EPS‑ und XPS‑Dokumenten als PDF und Rasterbilder. Kein Office erforderlich.

Open-Source Python Bibliothek für PS, EPS und XPS Umwandlung

Aspose.Page FOSS für Python ist eine kostenlose, Open-Source-Bibliothek zum Konvertieren von PostScript (PS), Encapsulated PostScript (EPS) und XPS-Dokumenten in Python-Anwendungen. Installieren Sie sie mit einem einzigen pip install aspose-page-foss-Befehl und beginnen Sie, Dokumente in PDF und Rasterbilder zu exportieren, ohne proprietäre Laufzeit oder Systemabhängigkeit.

Die Bibliothek stellt ein sauberes API bereit, das um PsDocument und XpsDocument herum aufgebaut ist. Laden Sie ein Dokument mit from_file() oder from_bytes(), rufen Sie dann to_pdf() auf, um einen PDF-Byte-Stream zu erhalten, oder to_image() mit einer ImageSaveOptions-Instanz, um zu PNG oder JPEG bei einer angegebenen DPI zu rendern. Ein optionaler MCP-Server stellt ps_to_pdf, ps_to_image, xps_to_pdf und xps_to_image als Remote-Konvertierungstools über FastMCP bereit.

Weil die Bibliothek keine Abhängigkeit von nativen Office-Bibliotheken oder Ghostscript hat, läuft sie identisch auf Windows, Linux und macOS, einschließlich CI-Runnern und Docker-Containern. Der Quellcode ist unter der MIT-Lizenz und auf GitHub gehostet. Entwickler, die das vollständige kommerzielle API benötigen, können Aspose.Page für Python zusammen mit diesen Open-Source-Ressourcen verwenden. Für das Enterprise-Produkt siehe Aspose.Page for Python — Enterprise Product.

Konvertieren von PS- und EPS-Dokumenten

  • PS zu PDF: Rufen Sie PsDocument.from_file() dann to_pdf() auf, um das Dokument als PDF‑Byte‑Array zu exportieren.
  • EPS zu PDF: PsDocument.from_file() akzeptiert sowohl die Dateierweiterungen .ps als auch .eps.
  • PS/EPS zu Bild: Übergeben Sie ein ImageSaveOptions(format="png", dpi=150) an to_image() für PNG‑ oder JPEG‑Ausgabe.
  • In‑Memory‑Verarbeitung: Alle Konvertierungen geben bytes zurück — es werden keine temporären Dateien benötigt.
  • Aus Bytes: Verwenden Sie PsDocument.from_bytes(), um PS/EPS‑Daten aus einem Netzwerk‑Stream oder Upload zu verarbeiten.

Wo PS/EPS-Umwandlung verwendet wird

  • Dokumentenpipelines: Exportieren Sie veraltete PostScript-Berichte für Archivierung oder Verbreitung in PDF.
  • Druck-Arbeitsflüsse: Umwandeln Sie PS-Ausgabe aus Drucktreibern in PDF oder Bildvorsichten.
  • EPS-Assetverarbeitung: EPS­Illustrationen in PNG für den Web oder die Dokumentation rastern.
  • ** Batch-Automatisierung:** Verarbeitung von PS/EPS-Dateien in CI oder Cron-Jobs ohne GUI.

XPS-Dokumente konvertieren

  • XPS to PDF: Rufen Sie XpsDocument.from_file() dann to_pdf() auf, um die XPS‑Datei als PDF‑Byte‑Array zu exportieren.
  • XPS to image: Rufen Sie to_image() mit ImageSaveOptions auf, um XPS‑Seiten als PNG oder JPEG zu rendern.
  • From bytes: Verwenden Sie XpsDocument.from_bytes() für XPS‑Daten im Speicher aus Uploads oder Streams.
  • Page access: Verwenden Sie add_page(), get_page() und remove_page(), um mit einzelnen Seiten zu arbeiten.
  • XPS package reading: Verwenden Sie XpsPackage.from_file(), um rohe XPS‑Paketteile zu untersuchen.

Wo XPS-Umwandlung verwendet wird

  • Windows-Druckspool: Exportieren Sie XPS-Spools aus dem Windows-Drückersubsystem in PDF oder Bild.
  • Archivierung von Dokumenten: Umwandeln Sie XPS-Dateien in allgemein lesbare PDF für eine langfristige Speicherung.
  • Vorschau: Verarbeitung von XPS-Seiten in PNG-Thumbnails für Dokumentenmanagementsysteme.
  • ** Cross-Plattform Nutzung:** Verarbeitung von XPS-Dateien auf Linux und MacOS Servern, bei denen keine native Viewer verfügbar sind.

MCP-Server für die Fernübertragung

  • Werkzeug-Exposition: create_server() registriert ps_to_pdf, ps_to_image, xps_to_pdf und xps_to_image als MCP-Tools über FastMCP.
  • EPS-Metadaten: Das eps_metadata Werkzeug extrahiert Bounding Box und DSC-Header-Felder aus EPS-Dateien.
  • Eingabe-/Ausgabetypen: McpInput akzeptiert einen Dateipfad oder base64-codierte Bytes; McpOutput gibt base64-Bytes zurück oder schreibt in einen Pfad.
  • Konvertierungsoptionen: McpConversionOptions steuert das Ausgabeformat und die DPI für Bildkonvertierungen.
  • Optionale Abhängigkeit: FastMCP wird nur für das Hosting des MCP-Servers benötigt; die Kernkonvertierung funktioniert ohne sie.

MCP-Anwendungsfälle

  • AI-Agentensysteme: Dokumentenkonvertierung als von Claude oder anderen MCP-kompatiblen Agenten aufrufbares Werkzeug darstellen.
  • Mikroservice: Führen Sie einen leichten Konvertierungsdienst aus, der PS/EPS/XPS über HTTP akzeptiert.
  • IDE-Plugins: Oberflächenkonvertierungsfunktionen für Editoren, die MCP-Toolserver unterstützen.
  • Workflow-Automatisierung: Integration der Umwandlung in n8n oder ähnliche Low-Code-automationsplattformen.

Render-Modell und PDF-Ausgabe

  • RenderModelBuilder: Erstelle ein RenderDocument mit begin_page(), add_path(), add_text(), add_image() und end_page().
  • PdfWriter: Übergebe eine PdfMetadata-Instanz und rufe write(doc) auf, um ein PDF-Byte-Array aus beliebigem RenderDocument zu erzeugen.
  • PdfMetadata: Setze die Felder title, creator, producer, creation_date und trapped im ausgegebenen PDF.
  • RasterRenderer: Rendere ein RenderDocument zu einem RasterSurface; kodieren mit encode_png() oder encode_bmp().
  • Unicode encoding: Die PDF-Ausgabeschicht schreibt mehrsprachigen Unicode-Text, einschließlich CJK und Kyrillisch.

Anwendungsfälle für die Darstellung auf niedrigem Niveau

  • PDF-Generation nach Maßgabe: Erstellen von Seiten mit Vektorpfaden, Text und Bildern ohne Zwischendatei PS/XPS.
  • Pixel-perfekte Tests: Verwenden Sie RasterRenderer zum Rendern von Dokumenten und zur Vergleichung der Pixel-Ausgänge in automatisierten Testungen.
  • ** Schriftzugeben:** Eingebettet werden TrueType-Schriften unter Verwendung von FontResolver und build_embedded_font() für die korrekte Darstellung.
  • ** Farbverwaltung:** Paint-Objekte mit DeviceRGB oder CIE-basierten Farbraumen auf Pfade und Text anwenden.

PS in PDF umwandeln

Aufruf PsDocument.from_file() zum Zugriff auf die PostScript-Datei und Aufruf to_pdf() zum Exportieren als PDF-Byte.

from pathlib import Path
from aspose.page.ps.document import PsDocument
ps = PsDocument.from_file("input.ps")
output_pdf = ps.to_pdf()
Path("output.pdf").write_bytes(output_pdf)

EPS in PNG umwandeln

Die gleiche Klasse PsDocument verarbeitet EPS-Dateien. Geben Sie eine ImageSaveOptions mit dem gewünschten Format und DPI an to_image().

from aspose.page.ps.document import PsDocument
from aspose.page.ps.output import ImageSaveOptions
eps = PsDocument.from_file("input.eps")
output_png = eps.to_image(ImageSaveOptions(format="png", dpi=150))
with open("output.png", "wb") as f:
    f.write(output_png)

XPS in PDF umwandeln

Aufruf XpsDocument.from_file() zum Zugriff auf das XPS-Dokument und Aufforderung to_pdf() zum Exportieren als PDF-Byte.

from pathlib import Path
from aspose.page.xps.document import XpsDocument
xps = XpsDocument.from_file("input.xps")
output_pdf = xps.to_pdf()
Path("output.pdf").write_bytes(output_pdf)

Häufig gestellte Fragen

Welche Lizenz verwendet Aspose.Page FOSS für Python?

Aspose.Page FOSS für Python wird unter der MIT License veröffentlicht, die die Nutzung in kommerziellen und proprietären Anwendungen erlaubt.

Gibt es irgendwelche einheimischen Abhängigkeiten?

Nein, die Bibliothek ist nicht abhängig von Ghostscript, Adobe Reader oder einer natürlichen Laufzeit. Sie läuft auf Windows, Linux und macOS.

Welche Eingabeformate unterstützt die Bibliothek?

Die Bibliothek liest PostScript (.ps), Encapsulated Post Script (.eps) und XPS-Dateien (.xps).

Welche Ausgabeformate erzeugt die Bibliothek?

Die Bibliothek exportiert über to_pdf() in PDF und via to_image() mit ImageSaveOptions zu PNG- oder JPEG-Rasterbildern.

Kann ich Dateien im Speicher ohne Dateneingang und -Ausgang verarbeiten?

Ja. Verwenden Sie from_bytes() zum Laden von Rohbyte und die zurückgegebenen Byte aus to_pdf() oder to_image() direkt ohne das Schreiben von Dateien.

  

Support und Lernressourcen

 Deutsch