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

Aspose.Page FOSS for Python

Libreria Python gratuita, con licenza MIT, per esportare documenti PS, EPS e XPS in PDF e immagini raster. Nessun Office richiesto.

Open-Source Python Library per PS, EPS e XPS Conversione

Aspose.Page FOSS per Python è una libreria open-source gratuita per la conversione di PostScript (PS), Documenti incapsulati PostScript (EPS) e XPS nelle applicazioni Python. Installalo con un’applicazione di programmazione EPS, che è la prima volta che si utilizza una funzione di software per il sistema operativo. singolo pip install aspose-page-foss comando e iniziare l’esportazione di documenti in PDF e immagini raster senza tempo di esecuzione proprietario o dipendenza dal sistema.

La libreria espone un’API pulita costruita intorno a PsDocument e XpsDocument. Caricare un documento con from_file() o from_bytes(), quindi chiamare to_pdf() per ottenere un flusso di byte PDF, oppure to_image() con un’istanza ImageSaveOptions da rendere in PNG o JPEG a una DPI specificata. Un server MCP opzionale espone ps_to_pdf, ps_to_image , xps_to_pdf e xps_to_image come strumenti di conversione remota utilizzando FastMCP.

Poiché la biblioteca non ha dipendenza da biblioteche Office nativi o Ghostscript, esegue identico su Windows, Linux e macOS, inclusi i running CI e i container Docker. codebase è concesso in licenza dal MIT e ospitato su GitHub. Gli sviluppatori che hanno bisogno della API commerciale completa può utilizzare Aspose.Page per Python insieme a queste risorse open source. Per il prodotto aziendale, vedere Aspose.Page for Python — Enterprise Product.

Convertire i documenti PS e EPS

  • PS to PDF: Chiamare PsDocument.from_file() e poi to_pdf() per esportare il documento come array di byte PDF.
  • EPS a PDF: PsDocument.from_file() accetta sia le estensioni file .ps che quelle di .eps.
  • ** PS/EPS all’immagine:** Passare un ImageSaveOptions(format="png", dpi=150) a to_image() per l’uscita PNG o JPEG.
  • Procedizione in memoria: Tutte le conversioni restituiscono bytes non sono necessari file temporanei.
  • Dai byte: Utilizzare PsDocument.from_bytes() per elaborare dati PS/EPS da un flusso di rete o caricare.

In cui viene utilizzata la conversione PS/EPS

  • Pipeline di documenti: Esporta i rapporti PostScript legacy in PDF per l’archivio o la distribuzione.
  • Flussi di lavoro per la stampa: Trasforma l’output PS dai driver di stampa in anteprima PDF o immagini.
  • EPS asset processing: Rasterizzare le illustrazioni EPS in PNG per l’uso web o nella documentazione.
  • Automazione batch: Processo di directory dei file PS/EPS in CI o cron senza GUI.

Convertire documenti XPS

  • XPS a PDF: Chiamare XpsDocument.from_file() e poi to_pdf() per esportare il file XPS come array di byte PDF.
  • XPS all’immagine: Chiamare to_image() con ImageSaveOptions per rendere le pagine XPS in PNG o JPEG.
  • Dai byte: Utilizzare XpsDocument.from_bytes() per i dati XPS in memoria da carica o streaming.
  • ** Accesso alle pagine:** Utilizzare add_page(), get_page() e remove_page() per lavorare con singole pagines.
  • ** Lettura del pacchetto XPS:** Utilizzare XpsPackage.from_file() per ispezionare le parti grezze del pacco Xps.

Dove viene utilizzata la conversione XPS

  • Spool di stampa Windows: Esporta i file XPS spool dal sottosistema di impressione Windows in PDF o immagine.
  • Archiviamento dei documenti: Trasformare i file XPS in PDF universale per la conservazione a lungo termine.
  • ** Generazione di anteprima:** Render pagine XPS in miniature PNG per sistemi di gestione dei documenti.
  • Uso cross-platform: Processare file XPS su server Linux e macOS dove i visualizzatori nativi non sono disponibili.

Server MCP per la conversione remota

  • Esposizione dello strumento: create_server() registra ps_to_pdf, ps_to_image, xps_to_pdf e xps_to_image come strumenti MCP tramite FastMCP.
  • Metadati EPS: Lo strumento eps_metadata estrae la bounding box e i campi dell’intestazione DSC dai file EPS.
  • Tipi di input/output: McpInput accetta un percorso file o byte codificati in base64; McpOutput restituisce byte base64 o scrive su un percorso.
  • Opzioni di conversione: McpConversionOptions controlla il formato di output e i DPI per le conversioni di immagini.
  • Dipendenza opzionale: FastMCP è richiesto solo per l’hosting del server MCP; la conversione di base funziona senza di esso.

Casi d'uso dei MCP

  • Pipeline di agenti AI: Esprimere la conversione dei documenti come strumento richiamabile da Claude o altri agenti compatibili con MCP.
  • Microservizi: Eseguire un servizio di conversione leggero che accetta PS/EPS/XPS su HTTP.
  • ** Plugins IDE:** Funzione di conversione della superficie per gli editor che supportano i server degli strumenti MCP.
  • Automazione dei flussi di lavoro: Integrare la conversione in piattaforme n8n o simili per l’automa­zione a basso codice.

Modello di rendering e uscita PDF

  • RenderModelBuilder: Costruisci un RenderDocument con begin_page(), add_path(), add_text(), add_image() e end_page().
  • PdfWriter: Passa un’istanza PdfMetadata e chiama write(doc) per produrre un array di byte PDF da qualsiasi RenderDocument.
  • PdfMetadata: Imposta i campi title, creator, producer, creation_date e trapped sul PDF di output.
  • RasterRenderer: Renderizza un RenderDocument in un RasterSurface; codifica con encode_png() o encode_bmp().
  • Unicode encoding: Il livello di output PDF scrive testo Unicode multilingue, inclusi CJK e cirillico.

Casi di utilizzo per la resa a basso livello

  • ** Generazione PDF personalizzata:** Crea pagine con percorsi vettoriali, testo e immagini senza un file PS/XPS intermedio.
  • Pixel-perfect testing: Utilizzare RasterRenderer per rendere documenti e confrontare le uscite di pixel in test automatizzati.
  • Incorporazione di caratteri: Incorporare i caratters TrueType utilizzando FontResolver e build_embedded_font() per il rendering corretto.
  • ** Gestione del colore:** Applicare gli oggetti Paint con spazi di colori basati su DeviceRGB o CIE ai percorsi e al testo.

Convertire PS in PDF

Chiamare PsDocument.from_file() per accedere al file PostScript e chiamareto_pdf() perché sia esportato come flusso di byte PDF.

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)

Convertire EPS in PNG

La stessa classe PsDocument gestisce i file EPS. Passare un ImageSaveOptions con il formato desiderato e DPI a 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)

Convertire XPS in PDF

Chiamare XpsDocument.from_file() per accedere al documento XPS e chiamareto_pdf() ad esportarlo come flusso di byte PDF.

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)

Domande Frequenti

Quale licenza usa Aspose.Page FOSS per Python?

Aspose.Page FOSS for Python è rilasciato sotto la licenza MIT, consentendo l’uso in applicazioni commerciali e proprietarie.

Ci sono dipendenze native?

No, la libreria non dipende da Ghostscript, Adobe Reader o qualsiasi altro runtime nativo.

Quali formati di input supporta la biblioteca?

La biblioteca legge file PostScript (.ps), Encapsulated Post Script (.eps) e XPS (.xps).

Quali sono i formati di output prodotti dalla biblioteca?

La libreria esporta in PDF tramite to_pdf() e in PNG o JPEG immagini raster via to_image() con ImageSaveOptions.

Posso elaborare i file in memoria senza I/O del disco?

Si. Utilizzare from_bytes() per caricare da byte grezzi e gli bytes restituiti da to_pdf() o to_image() direttamente senza scrivere file.

  

Risorse di Supporto e Apprendimento

 Italiano