Mesclar ficheiros PostScript para PDF usando Python
Pode verificar a qualidade do Aspose.Page PS Merger e visualizar os resultados online gratuitamente através do PostScipt Merger
Siga os próximos passos simples para combinar vários ficheiros PS num único PDF através do Python:
- Inicialize um fluxo de entrada para o primeiro ficheiro PS de entrada.
- Inicialize um fluxo de saída para o documento PDF de saída.
- Crie um array de ficheiros PS que serão fundidos com o primeiro.
- Crie uma instância de PsDocument a partir do fluxo de entrada criado anteriormente.
- Utilize PdfSaveOptions para especificar os valores booleanos AdditionalFontsFolder e SuppressError.
- Crie uma instância de PdfDevice a partir do fluxo de saída criado anteriormente.
- Mescle os ficheiros PostScript com o documento criado e guarde-o como PDF com as opções de guardar PDF.
O seguinte excerto de código mostra como fundir ficheiros PS num documento PDF em Python:
1# For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-Python
2
3from aspose.page.eps import *
4from aspose.page.eps.device import *
5from util import Util
6###############################################
7###### Class and Method declaration here ######
8###############################################
9
10# The path to the documents directory.
11data_dir = Util.get_data_dir_working_with_document_merging()
12# Initialize PDF output stream
13pdf_stream = open(data_dir + "outputPDF_out.pdf", "wb")
14# Initialize the first PostScript file input stream
15ps_stream = open(data_dir + "input.ps", "rb",)
16document = PsDocument(ps_stream)
17
18# Create an array of PostScript files that will be merged with the first one
19files_for_merge = [ data_dir + "input2.ps", data_dir + "input3.ps" ]
20
21# If you want to convert Postscript file despite of minor errors set this flag
22suppress_errors = True
23
24#Initialize options object with necessary parameters.
25options = PdfSaveOptions(suppress_errors)
26# If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
27options.additional_fonts_folders = [ """{FONT_FOLDER}""" ]
28
29# Default page size is 595x842 and it is not mandatory to set it in PdfDevice
30device = PdfDevice(pdf_stream)
31# But if you need to specify size and image format use following line
32#Aspose.Page.EPS.Device.PdfDevice device = new Aspose.Page.EPS.Device.PdfDevice(pdfStream, new aspose.pydrawing.Size(595, 842));
33
34try:
35 document.merge(files_for_merge, device, options)
36finally:
37 ps_stream.close()
38 pdf_stream.close()Consideremos
PdfSaveOptions. Utilizando esta classe, podemos atribuir diferentes parâmetros de conversão ao fundir ficheiros PS para PDF.
- AdditionalFontsFolder especifica os locais onde o conversor pode encontrar fontes adicionais. Por predefinição, as pastas de fontes do sistema são sempre incluídas.
- SuppressError controla o comportamento da fusão de EPS para PDF quando ocorrem erros não críticos. Se definido como verdadeiro, permite que o processo de fusão continue, e uma lista destes erros pode ser visualizada no campo Exceções após a fusão. O valor predefinido é verdadeiro.
- Debug permite a saída de informação de depuração para a consola. Por predefinição, está definido como falso.