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

Aspose.Page FOSS for Python

Gratuit, sous licence MIT, bibliothèque Python pour exporter les documents PS, EPS et XPS en PDF et images raster. Aucun Office requis.

Bibliothèque Python open source pour PS, EPS et XPS Conversion

Aspose.Page FOSS pour Python est une bibliothèque gratuite et open‑source pour convertir les documents PostScript (PS), Encapsulated PostScript (EPS) et XPS dans les applications Python. Installez‑la avec une seule commande pip install aspose-page-foss et commencez à exporter des documents en PDF et images raster sans aucune dépendance d’exécution propriétaire ou système.

La bibliothèque expose un API propre construit autour de PsDocument et XpsDocument. Chargez un document avec from_file() ou from_bytes(), puis appelez to_pdf() pour obtenir un flux d’octets PDF, ou to_image() avec une instance ImageSaveOptions pour rendre en PNG ou JPEG à une résolution DPI spécifiée. Un serveur MCP optionnel expose ps_to_pdf, ps_to_image, xps_to_pdf et xps_to_image comme outils de conversion à distance utilisant FastMCP.

Parce que la bibliothèque n’a aucune dépendance aux bibliothèques Office natives ou à Ghostscript, elle fonctionne identiquement sous Windows, Linux et macOS, y compris sur les runners CI et les conteneurs Docker. Le code source est sous licence MIT et hébergé sur GitHub. Les développeurs qui ont besoin du API commercial complet peuvent utiliser Aspose.Page pour Python en complément de ces ressources open‑source. Pour le produit d’entreprise, voir Aspose.Page for Python — Enterprise Product.

Conversion des documents PS et EPS

  • PS à PDF: Appeler PsDocument.from_file() puis to_pdf() pour exporter le document sous forme de matrice en octets PDF.
  • EPS à PDF: PsDocument.from_file() accepte les extensions de fichier .ps et .eps. Le code du fixier est le même que celui des autres fiches, mais il n’est pas compatible avec la version originale.
  • ** PS/EPS à l’image:** Passez un ImageSaveOptions(format="png", dpi=150) à to_image() pour une sortie PNG ou JPEG.
  • ** Traitement en mémoire:** Toutes les conversions renvoient bytes aucun fichier temporaire requis.
  • De bytes: Utilisez PsDocument.from_bytes() pour traiter les données PS/EPS d’un flux réseau ou de téléchargement.

Lorsque la conversion PS/EPS est utilisée

  • Pipelines de documents: Exporter les rapports PostScript hérités en PDF pour leur archivage ou distribution.
  • Flues de travail d’impression: Transformer la sortie PS des pilotes d"imprimante en prévisualisation PDF ou image.
  • ** Traitement des actifs EPS:** Rastériser les illustrations E PS en PNG pour une utilisation sur le Web ou dans la documentation.
  • ** Automatisation par lots:** Traiter les répertoires de fichiers PS/EPS dans des emplois CI ou cron sans interface graphique.

Convertir des documents XPS

  • XPS vers PDF: Appeler XpsDocument.from_file() puis to_pdf() pour exporter le fichier XPS sous forme de matrice en octets PDF.
  • XPS à l’image: Appeler to_image() avec ImageSaveOptions pour rendre les pages XPS en PNG ou JPEG.
  • De bytes: Utilisez XpsDocument.from_bytes() pour les données XPS en mémoire provenant de téléchargements ou de flux.
  • ** Accès à la page:** Utilisez add_page(), get_page() et remove_page() pour travailler avec des pages individuelles.
  • ** Lire le paquet XPS:** Pour inspecter les pièces brutes du packet Xps, utilisez XpsPackage.from_file().

Où la conversion XPS est utilisée

  • Souleau d’impression Windows: Exporter des fichiers de souleaux XPS depuis le sous-système d"imprimante Windows en PDF ou image.
  • Archive de documents: Transformez les fichiers XPS en PDF universellement lisible pour un stockage à long terme.
  • Génération d’aperçu: Rendre les pages XPS en miniatures PNG pour les systèmes de gestion des documents.
  • ** Utilisation multiplateforme:** Traiter des fichiers XPS sur les serveurs Linux et macOS où les visualiseurs natifs ne sont pas disponibles.

Serveur MCP pour conversion à distance

  • Exposition de l’outil: create_server() enregistre ps_to_pdf, ps_to_image, xps_to_pdf et xps_to_image comme outils MCP via FastMCP.
  • Métadonnées EPS: L’outil eps_metadata extrait la boîte englobante et les champs d’en-tête DSC des fichiers EPS.
  • Types d’entrée/sortie: McpInput accepte un chemin de fichier ou des octets encodés en base64 ; McpOutput renvoie des octets base64 ou écrit vers un chemin.
  • Options de conversion: McpConversionOptions contrôle le format de sortie et le DPI pour les conversions d’images.
  • Dépendance optionnelle: FastMCP n’est requis que pour l’hébergement du serveur MCP ; la conversion de base fonctionne sans lui.

Cas d'utilisation des PPC

  • ** Pipelines d’agents IA:** Exposer la conversion de documents comme un outil à appeler par Claude ou d’autres agents compatibles avec les PCM.
  • ** Microservices:** Exécutez un service de conversion léger acceptant PS/EPS/XPS sur HTTP.
  • ** Plugins IDE:** Fonctionnalité de conversion surfaces pour les éditeurs qui prennent en charge des serveurs d’outils MCP.
  • Automatisation des flux de travail: Intégrer la conversion dans n8n ou d’autres plateformes similaires à faible coût.

Modèle de rendu et sortie PDF

  • RenderModelBuilder: Construisez un RenderDocument avec begin_page(), add_path(), add_text(), add_image() et end_page().
  • PdfWriter: Passez une instance PdfMetadata et appelez write(doc) pour produire un tableau d’octets PDF à partir de n’importe quel RenderDocument.
  • PdfMetadata: Définissez les champs title, creator, producer, creation_date et trapped du PDF de sortie.
  • RasterRenderer: Rendez un RenderDocument en un RasterSurface ; encodez avec encode_png() ou encode_bmp().
  • Unicode encoding: Le niveau de sortie PDF écrit du texte Unicode multilingue incluant le CJK et le cyrillique.

Cas d'utilisation de rendus à faible niveau

  • Génération personnalisée de PDF: Créer des pages avec des chemins vectoriels, du texte et des images sans fichier PS/XPS intermédiaire.
  • Période de test par pixel parfait: Utilisez RasterRenderer pour rendre des documents et comparer les sorties en pixels dans le cadre d’essais automatisés.
  • ** Embedding de police:** Embed TrueType polices en utilisant FontResolver et build_embedded_font() pour le rendu correct.
  • Gestion des couleurs: Appliquer Paint aux objets avec espaces de couleur basés sur DeviceRGB ou CIE à la voie et au texte.

Convertir les fichiers PS en PDF

Appeler PsDocument.from_file() pour accéder au fichier PostScript et appelerto_pdf() afin de l’exporter sous forme d’un flux de octets 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)

Convertir EPS en PNG

La même classe PsDocument gère les fichiers EPS. Passez un ImageSaveOptions avec le format et l’IPD souhaité à 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)

Convertir XPS en PDF pour le format de fichier vidéo

Appeler XpsDocument.from_file() pour accéder au document XPS et appelerto_pdf() afin de l’exporter sous forme d’un flux de octets 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)

Foire aux questions

Quelle licence utilise Aspose.Page FOSS pour Python ?

Aspose.Page FOSS pour Python est publié sous la licence MIT, permettant son utilisation dans des applications commerciales et propriétaires.

Il y a des dépendances natives ?

Non, la bibliothèque n’est pas dépendante de Ghostscript, Adobe Reader ou d’un autre temps d ’exécution natif. Elle fonctionne sur Windows, Linux et macOS.

Quels sont les formats d’entrée pris en charge par la bibliothèque ?

La bibliothèque lit des fichiers PostScript (.ps), Encapsulated Post Script (.eps) et XPS (.xps).

Quels sont les formats de sortie produits par la bibliothèque ?

La bibliothèque exporte vers PDF via to_pdf() et vers PNG ou JPEG des images de raster par l’intermédiaire de to_image() avec ImageSaveOptions.

Puis-je traiter des fichiers en mémoire sans entrée/sortie sur disque ?

Oui. Utilisez from_bytes() pour charger à partir de octets bruts et les octet retournés depuis to_pdf() ou to_image() directement sans écrire des fichiers.

  

Ressources de support et d'apprentissage

 Français