Conversão de PS e EPS
Conversão de PS e EPS
PsDocument é o ponto de entrada para carregar PostScript (.ps) e PostScript encapsulado (.epsOs dois formatos são tratados pela mesma classe através da mesma interface.
Carregamento de um ficheiro PS ou EPS
Utilização: PsDocument.from_file() para carregar um documento a partir de uma rota de arquivo. O is_eps propriedade Indica se o ficheiro carregado é um ficheir 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 carregar a partir de bytes brutos (por exemplo, um upload ou fluxo de rede), use from_bytes():
from aspose.page.ps.document import PsDocument
with open("document.ps", "rb") as f:
data = f.read()
doc = PsDocument.from_bytes(data)Exportar para PDF
Chama-me . to_pdf() Em um carregado. PsDocument para obter uma matriz de bytes PDF. Escreva o resultado para o disco ou devolvê-lo diretamente a partir de um manipulador 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)Exportação para PNG ou JPEG
Passar um ImageSaveOptions instância a to_image().- Está pronto . format a) para o "png" ou a) "jpeg" e a) dpi à resolução desejada.
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))Leitura de metadados EPS DSC
PsDocument.dsc retorna um DscMetadata instância quando estão presentes comentários de cabeçalho do DSC. Use-o para ler a caixa de limitação, o título e os campos do criador antes da conversão.
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)Dicas e melhores práticas
- Utilização:
from_bytes()quando processam uploads para evitar a escrita de ficheiros temporários. - Verificação
is_epsA partir de um sistema de análise, a base do processo é definida como:. - Set (s)
dpi=150ou superior para a saída raster utilizada em sistemas de visualização prévia de documentos. - Todos os métodos de conversão retornam
bytesarmazená-los ou transmitir sem E/S em disco, se necessário.
Problemas comuns
| Emissão | Causa da morte | Correção |
|---|---|---|
FileNotFoundError | Trilha passada para from_file() não existe. | Verificar o caminho do ficheiro antes de ligar . from_file() |
| Saída PDF vazia | PS arquivo não contém nenhum conteúdo renderizable | Verifique a fonte de PS para encontrar falta showpage operadores |
| Raster de baixa resolução | DPI padrão é 96 | Passagem . ImageSaveOptions(dpi=150) ou superior a: |
FAQ
Posso converter arquivos EPS em PDF?
- Sim, é verdade.
PsDocument.from_file()aceita ambos os tipos de.pse a).eps- Não, não.to_pdf()no documento devolvido para obter bytes PDF.
A conversão requer Ghostscript?
A biblioteca não depende do Ghostscript ou de qualquer tempo de execução nativo.
Posso processar arquivos PS sem escrever para disco?
Sim, usa. from_bytes() para carregar a partir de um bytes Objeto e utilizar o retorno de bytes de: to_pdf() ou a) to_image() diretamente não é necessário escrever arquivos.
Resumo de referência da API
| Classe / Método | Descrição: |
|---|---|
PsDocument.from_file(path) | Carregar PS ou EPS a partir de um caminho de arquivo |
PsDocument.from_bytes(data) | Carregar PS ou EPS a partir de bytes brutos |
PsDocument.to_pdf(options) | Exportação para bytes PDF |
PsDocument.to_image(options) | Exportação para bytes de imagem raster |
PsDocument.is_eps | Verdadeiro se o ficheiro carregado for EPS |
PsDocument.dsc | Metadados de cabeçalho do DSC (arquivos EPS) |
DscMetadata.bounding_box | Caixa de limitação EPS como (x0, y0, x1, y1) |
DscMetadata.title | Título do cabeçalho EPS DSC |
ImageSaveOptions.format | Formatos de saída: “png” ou “jpeg” |
ImageSaveOptions.dpi | Resolução de saída em DPI |