Conversión PS y EPS
Conversión PS y EPS
PsDocument El punto de entrada para la carga PostScript (.psy PostScript encapsulado (.epsLos dos formatos son gestionados por la misma clase a través de la mesma interfaz.
Cargar un archivo PS o EPS
Uso PsDocument.from_file() para cargar un documento de una ruta de archivo. el is_eps Propiedad indicar si el archivo cargado es un archivos EPS.
from aspose.page.ps.document import PsDocument
ps = PsDocument.from_file("document.ps")
eps = PsDocument.from_file("illustration.eps")
print("Is EPS:", eps.is_eps)Para cargar de bajos crudos (por ejemplo, un upload o una red), utilizar from_bytes():
from aspose.page.ps.document import PsDocument
with open("document.ps", "rb") as f:
data = f.read()
doc = PsDocument.from_bytes(data)Exportación a PDF
llamadas to_pdf() En una carga PsDocument para obtener un array de PDF. Escribe el resultado para discar o devolverlo directamente desde un operador HTTP.
from pathlib import Path
from aspose.page.ps.document import PsDocument
ps = PsDocument.from_file("input.ps")
pdf_bytes = ps.to_pdf()
Path("output.pdf").write_bytes(pdf_bytes)Exportación a PNG o JPEG
Pasar una ImageSaveOptions El caso de to_image().Sitio Set format para "png" o "jpeg" y dpi a la resolución deseada.
from pathlib import Path
from aspose.page.ps.document import PsDocument
from aspose.page.ps.output import ImageSaveOptions
eps = PsDocument.from_file("illustration.eps")
opts = ImageSaveOptions(format="png", dpi=150)
Path("output.png").write_bytes(eps.to_image(opts))EPS DSC Metadatos de la lectura
PsDocument.dsc Volver a DscMetadata caso cuando los comentarios del título de DSC están presentes En el archivo EPS. Utilice para leer la cuadro de límite, título y campos creadores antes de convertir.
from aspose.page.ps.document import PsDocument
eps = PsDocument.from_file("illustration.eps")
dsc = eps.dsc
if dsc is not None:
print("Title:", dsc.title)
print("Bounding box:", dsc.bounding_box)
print("Creator:", dsc.creator)Consejos y mejores prácticas
- Uso
from_bytes()Cuando el procesamiento de los cargadores para evitar la escritura de archivos temporales. - Verificar
is_epspara la lógica de ramificación al procesar un conjunto mixto de archivos PS y EPS. - Sitio
dpi=150o superior para la producción de raster utilizada en los sistemas de previsión de documentos. - Todos los métodos de conversión regresan
bytes- almacenar o transmitirlos sin disco I/O si es necesario.
Problemas comunes
| Problemas | Causas | Fixado |
|---|---|---|
FileNotFoundError | El camino pasó a from_file() No existe | Verificar el camino de archivo antes de llamar from_file() |
| Página de PDF vacía | El archivo de PS no contiene contenido renderable. | Inspecciona la fuente de PS por falta showpage Operadores |
| Rastreador de baja resolución | El DPI es de 96 | Paso ImageSaveOptions(dpi=150) o más alto |
FAQ
¿Puedo convertir archivos de EPS en PDF?
Sí sí. PsDocument.from_file() aceptan ambos .ps y .eps Extensiones - llamadas to_pdf() en el documento devuelto para obtener los bajos PDF.
¿La conversión requiere Ghostscript?
No. La biblioteca no tiene ninguna dependencia de Ghostscript o cualquier tiempo de trabajo nativo.
¿Puedo procesar archivos de PS sin escribir en disco?
Sí, usamos from_bytes() para cargar de A bytes Objeto y uso de la devolución bytes de to_pdf() o to_image() directamente — no hay necesidad de escribir archivos.
Sumación de referencia API
| Clase / Método | Descripción |
|---|---|
PsDocument.from_file(path) | Cargar PS o EPS desde un camino de archivo |
PsDocument.from_bytes(data) | Cargar PS o EPS de bajos crudos |
PsDocument.to_pdf(options) | Exportación a los bytes PDF |
PsDocument.to_image(options) | Exportación a raster imágenes bytes |
PsDocument.is_eps | Si el archivo cargado es EPS |
PsDocument.dsc | Metadatos de los header DSC (Files EPS) |
DscMetadata.bounding_box | La cuenca de límite EPS como (x0, y0, x1, y1) |
DscMetadata.title | Título de la etiqueta EPS DSC header |
ImageSaveOptions.format | Formato de salida: “png” o “jpeg” |
ImageSaveOptions.dpi | Resolución de salida en DPI |