Объединение файлов 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
3# The path to the documents directory.
4data_dir = Util.get_data_dir_working_with_document_merging()
5# Initialize PDF output stream
6pdf_stream = open(data_dir + "outputPDF_out.pdf", "wb")
7# Initialize the first PostScript file input stream
8ps_stream = open(data_dir + "input.ps", "rb",)
9document = PsDocument(ps_stream)
10
11# Create an array of PostScript files that will be merged with the first one
12files_for_merge = [ data_dir + "input2.ps", data_dir + "input3.ps" ]
13
14# If you want to convert Postscript file despite of minor errors set this flag
15suppress_errors = True
16
17#Initialize options object with necessary parameters.
18options = PdfSaveOptions(suppress_errors)
19# If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
20options.additional_fonts_folders = [ """{FONT_FOLDER}""" ]
21
22# Default page size is 595x842 and it is not mandatory to set it in PdfDevice
23device = PdfDevice(pdf_stream)
24# But if you need to specify size and image format use following line
25#Aspose.Page.EPS.Device.PdfDevice device = new Aspose.Page.EPS.Device.PdfDevice(pdfStream, new aspose.pydrawing.Size(595, 842));
26
27try:
28 document.merge(files_for_merge, device, options)
29finally:
30 ps_stream.close()
31 pdf_stream.close()
Давайте рассмотрим PdfSaveOptions. Используя этот класс, мы можем назначать различные параметры преобразования при объединении файлов PS в PDF.
- AdditionalFontsFolder указывает места, где конвертер может найти дополнительные шрифты. По умолчанию всегда включены папки системных шрифтов.
- SuppressError контролирует поведение слияния EPS и PDF при возникновении некритических ошибок. Если установлено значение true, процесс слияния может быть продолжен, а список таких ошибок можно просмотреть в поле «Исключения» после слияния. Значение по умолчанию — true.
- Debug позволяет выводить отладочную информацию на консоль. По умолчанию установлено значение false.