Conversão de PS e EPS

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_eps A partir de um sistema de análise, a base do processo é definida como:.
  • Set (s) dpi=150 ou superior para a saída raster utilizada em sistemas de visualização prévia de documentos.
  • Todos os métodos de conversão retornam bytes armazená-los ou transmitir sem E/S em disco, se necessário.

Problemas comuns

EmissãoCausa da morteCorreção
FileNotFoundErrorTrilha passada para from_file() não existe.Verificar o caminho do ficheiro antes de ligar . from_file()
Saída PDF vaziaPS arquivo não contém nenhum conteúdo renderizableVerifique a fonte de PS para encontrar falta showpage operadores
Raster de baixa resoluçãoDPI padrão é 96Passagem . ImageSaveOptions(dpi=150) ou superior a:

FAQ

Posso converter arquivos EPS em PDF?

  • Sim, é verdade. PsDocument.from_file() aceita ambos os tipos de .ps e 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étodoDescriçã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_epsVerdadeiro se o ficheiro carregado for EPS
PsDocument.dscMetadados de cabeçalho do DSC (arquivos EPS)
DscMetadata.bounding_boxCaixa de limitação EPS como (x0, y0, x1, y1)
DscMetadata.titleTítulo do cabeçalho EPS DSC
ImageSaveOptions.formatFormatos de saída: “png” ou “jpeg”
ImageSaveOptions.dpiResolução de saída em DPI

Ver também:

 Português