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

Aspose.Page FOSS for Python

Biblioteca Python gratuita, con licencia MIT, para exportar documentos PS, EPS y XPS como PDF e imágenes raster. No se requiere Office.

Biblioteca de Python de código abierto para PS, EPS y conversión XPS

Aspose.Page FOSS para Python es una biblioteca gratuita y de código abierto para convertir PostScript (PS), Encapsulated PostScript (EPS) y documentos XPS en aplicaciones Python. Instálala con un comando pip install aspose-page-foss único y comienza a exportar documentos a PDF e imágenes raster sin ninguna dependencia propietaria de tiempo de ejecución o del sistema.

La biblioteca expone un API limpio construido sobre PsDocument y XpsDocument. Carga un documento con from_file() o from_bytes(), luego llama a to_pdf() para obtener un flujo de bytes PDF, o to_image() con una instancia ImageSaveOptions para renderizar a PNG o JPEG a una DPI especificada. Un servidor MCP opcional expone ps_to_pdf, ps_to_image, xps_to_pdf y xps_to_image como herramientas de conversión remotas usando FastMCP.

Debido a que la biblioteca no tiene dependencia de bibliotecas nativas de Office o Ghostscript, se ejecuta idénticamente en Windows, Linux y macOS, incluidos los runners de CI y contenedores Docker. El código fuente tiene licencia MIT y está alojado en GitHub. Los desarrolladores que necesiten el API comercial completo pueden usar Aspose.Page para Python junto a estos recursos de código abierto. Para el producto empresarial, consulte Aspose.Page for Python — Enterprise Product.

Convertir documentos de PS y EPS

  • PS a PDF: Chamando PsDocument.from_file() y luego to_pdf() para exportar el documento como un array de byte PDF.
  • EPS a PDF: PsDocument.from_file() acepta tanto las exteniones de archivo .ps y .eps.
  • PS/EPS a la imagen: Pasar un ImageSaveOptions(format="png", dpi=150) a to_image() para PNG o JPEG salida.
  • ** Procesamiento en memoria:** Todas las conversiones devuelven bytes — no se requieren archivos temporales.
  • Desde bajos: Utilice PsDocument.from_bytes() para procesar los datos de PS/EPS desde un flujo de red o descargarlos.

Dónde se utiliza la conversión PS/EPS

  • Pipelines de documentos: Reportaciones PostScript de herencia de exportación en PDF para archivo o distribución.
  • Fluentes de trabajo de impresión: Transforma la salida del PS desde los drivers impresos en previstas PDF o de imagen.
  • Tratamiento de activos EPS: Rasterize ilustraciones Eps a PNG para uso web o documentación.
  • Automatización de batch: Directorios de procesamiento de archivos PS/EPS en CI o trabajos cron sin un GUI.

Convertir documentos XPS

  • XPS a PDF: Chamando XpsDocument.from_file() y luego to_pdf() para exportar el archivo XPS como un array de byte PDF.
  • XPS a la imagen: Chamando to_image() con ImageSaveOptions para render las páginas XPS en PNG o JPEG.
  • Desde bajos: Utilice XpsDocument.from_bytes() para los datos XPS de la memoria en las cargas o flujos.
  • ** Acceso a la página:** Utilice add_page(), get_page() y remove_page() para trabajar con páginas individuales.
  • Lectura de paquetes XPS: Utilice XpsPackage.from_file() para inspeccionar las piezas crudas del paquete Xps.

Dónde se utiliza la conversión XPS

  • Windows Print Spool: Exporta los archivos de Windows Print SPool desde el subsistema de la impresión a PDF o imagen.
  • Arquivando documentos: Transformar los archivos XPS en PDF universal para almacenamiento a largo plazo.
  • Generacin de previo: Render páginas XPS a miniaturas PNG para sistemas de gestión de documentos.
  • Uso de plataforma: Procesar archivos XPS en servidores Linux y macOS donde los espectadores nativos no están disponibles.

MCP Server para la conversión a distancia

  • Exposición de la herramienta: create_server() registra ps_to_pdf, ps_to_image, xps_to_pdf y xps_to_image como herramientas MCP a través de FastMCP.
  • Metadatos EPS: La herramienta eps_metadata extrae la caja delimitadora y los campos de encabezado DSC de los archivos EPS.
  • Tipos de entrada/salida: McpInput acepta una ruta de archivo o bytes codificados en base64; McpOutput devuelve bytes en base64 o escribe en una ruta.
  • Opciones de conversión: McpConversionOptions controla el formato de salida y DPI para conversiones de imágenes.
  • Dependencia opcional: FastMCP es necesario solo para el alojamiento del servidor MCP; la conversión principal funciona sin él.

MCP utiliza los casos

  • Puebles de agente AI: Exponer la conversión de documentos como una herramienta que puede ser llamada por Claude o otros agentes compatibles con MCP.
  • Microservices: Ejecuta un servicio de conversión ligero que acepta PS/EPS/XPS a través de HTTP.
  • Plugins IDE: Funcionalidad de conversión de superficie para editores que soportan servidores de herramientas MCP.
  • Automización del flujo de trabajo: Convertir en n8n o plataformas similares de automatización de bajo código.

Modelo de Render y PDF Output

  • RenderModelBuilder: Construya un RenderDocument con begin_page(), add_path(), add_text(), add_image() y end_page().
  • PdfWriter: Pase una instancia de PdfMetadata y llame a write(doc) para producir una matriz de bytes PDF a partir de cualquier RenderDocument.
  • PdfMetadata: Establezca los campos title, creator, producer, creation_date y trapped en el PDF de salida.
  • RasterRenderer: Renderice un RenderDocument a un RasterSurface; codifique con encode_png() o encode_bmp().
  • Unicode encoding: La capa de salida PDF escribe texto Unicode multilingüe, incluyendo CJK y cirílico.

Casos de uso de rendimiento bajo

  • Generador PDF personalizado: Construye páginas con caminos vector, texto y imágenes sin un archivo PS/XPS intermediario.
  • Test de perfección de píxeles: Utilice RasterRenderer para render documentos y comparar los resultados de pixel en pruebas automatizadas.
  • Entegración de fuentes: Embed fonts TrueType utilizando FontResolver y build_embedded_font() para la rendición correcta.
  • Gestión de colores: Aplique objetos Paint con espacios de color basados en DeviceRGB o CIE a los caminos y el texto.

Convertir el PS en PDF

Chame PsDocument.from_file() para acceder al archivo PostScript y chameto_pdf() a exportarlo como un flujo de 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)

Convertir EPS en PNG

La misma clase de PsDocument mantiene los archivos EPS. Transmitir un ImageSaveOptions con el formato deseado y 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)

Convertir XPS en PDF

Chame XpsDocument.from_file() para acceder al documento XPS y chameto_pdf() a exportarlo como un flujo de 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)

Preguntas frecuentes

¿Qué licencia hace Aspose.Page FOSS para el uso de Python?

Aspose.Page FOSS para Python se libera bajo la Licencia MIT, permitiendo su uso en aplicaciones comerciales y propiedad.

¿Hay dependencias nativas?

No. La biblioteca no tiene dependencia en Ghostscript, Adobe Reader o cualquier tiempo de trabajo nativo. se lleva a cabo en Windows, Linux y macOS.

¿Qué formatos de entrada apoya la biblioteca?

La biblioteca lee los archivos PostScript (.ps), Encapsulado Postcript ( .eps) y XPS ( xps).

¿Qué formatos de producción produce la biblioteca?

La biblioteca exporta a PDF a través de to_pdf() y a PNG o JPEG raster imágenes a partir deto_image() con ImageSaveOptions.

¿Puedo procesar archivos en memoria sin disco I/O?

Sí. Utilice from_bytes() para cargar de bajos crudos y los bajas devueltos desde to_pdf() o to_image() directamente sin escribir archivos.

  

Recursos de soporte y aprendizaje

 Español