Объединение файлов PostScript в PDF с помощью Python
Вы можете проверить качество Aspose.Page PS Merger и просмотреть результаты через бесплатный онлайн-сервис PostScipt Merger
Сделайте следующие простые шаги, чтобы объединить несколько файлов PS в один PDF с помощью Python:
- Инициализируйте входной поток для первого входного файла PS.
- Инициализируйте выходной поток для выходного PDF-документа.
- Создайте массив PS-файлов, который будет объединен с первым.
- Создайте экземпляр PsDocument из ранее созданного входного потока.
- Используйте PdfSaveOptions, чтобы указать логические значения AdditionalFontsFolder и SuppressError.
- Создайте экземпляр PdfDevice из созданного ранее выходного потока.
- Объедините файлы PostScript с созданным документом и сохраните его в формате PDF с опциями сохранения PDF.
В следующем фрагменте кода показано, как объединить файлы PS с документом PDF в 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()Давайте рассмотрим PdfSaveOptions. Используя этот класс, мы можем назначать различные параметры преобразования при объединении файлов PS в PDF.
- AdditionalFontsFolder указывает места, где конвертер может найти дополнительные шрифты. По умолчанию всегда включены папки системных шрифтов.
- SuppressError контролирует поведение слияния EPS и PDF при возникновении некритических ошибок. Если установлено значение true, процесс слияния может быть продолжен, а список таких ошибок можно просмотреть в поле «Исключения» после слияния. Значение по умолчанию — true.
- Debug позволяет выводить отладочную информацию на консоль. По умолчанию установлено значение false.