Объединение файлов XPS | Aspose.Page для Python через .NET
Вы можете проверить качество Aspose.Page XPS Merger и просмотреть результаты с помощью бесплатного онлайн-сервиса XPS Merger
Чтобы выполнить слияние XPS, выполните следующие действия:
- Инициализируйте входной поток для первого входного документа XPS.
- Инициализируйте выходной поток для выходного документа XPS.
- Создайте массив файлов XPS, который будет объединен с первым.
- Создайте экземпляр XpsDocument из ранее созданного входного потока.
- Объедините файлы XPS с созданным документом и сохраните его.
Вот пример фрагмента кода, демонстрирующий, как объединить файлы XPS в документ PDF с помощью Python:
1# For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-Python
2# The path to the documents directory.
3data_dir = Util.get_data_dir_working_with_document_merging()
4# Initialize the PDF output stream
5with open(data_dir + "mergedXPSfiles.pdf", "wb") as pdf_stream:
6 # Initialize an XPS input stream
7 with open(data_dir + "input.xps", "rb") as xps_stream:
8 # Load the XPS document form the stream
9 document = XpsDocument(xps_stream, XpsLoadOptions())
10 # or load the XPS document directly from a file. No xpsStream is needed then.
11 # XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());
12
13 # Initialize an options object with necessary parameters.
14 options = PdfSaveOptions()
15
16 options.jpeg_quality_level = 100
17 options.image_compression = PdfImageCompression.JPEG
18 options.text_compression = PdfTextCompression.FLATE
19
20 # Create a rendering device for PDF format
21 device = PdfDevice(pdf_stream)
22
23 # Create an array of XPS files that will be merged with the first one
24 files_to_merge = [ data_dir + "Demo.xps", data_dir + "sample.xps" ]
25
26 # Merge XPS files to output PDF document
27 document.merge(files_to_merge, device, options)
Объединение Aspose.Page Python XPS позволяет также объединять файлы XPS в документ PDF.
Чтобы выполнить объединение XPS в PDF, необходимо выполнить несколько шагов:
- Инициализируйте входной поток для первого входного документа XPS.
- Инициализируйте выходной поток для выходного PDF-документа.
- Создайте массив файлов XPS, который будет объединен с первым.
- Создайте экземпляр XpsDocument из созданного ранее входного потока.
- Укажите TextCompression, ImageCompression, JpegQualityLevel и другие параметры PdfSaveOptions.
- Создайте экземпляр PdfDevice из ранее созданного выходного потока.
- Объедините файлы XPS в созданный документ и сохраните его в формате PDF с опциями сохранения PDF.
В следующем фрагменте кода показано, как объединить несколько файлов XPS в документ 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 an XPS output stream
6with open(data_dir + "mergedXPSfiles.xps", "wb") as out_stream:
7 # Initialize the XPS input stream
8 with open(data_dir + "input.xps", "rb") as in_stream:
9 # Load the XPS document from the stream
10 document = XpsDocument(in_stream, XpsLoadOptions())
11 # or load the XPS document directly from file. No xpsStream is needed then.
12 # XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());
13
14 # Create an array of XPS files that will be merged with the first one
15 files_to_merge = [ data_dir + "Demo.xps", data_dir + "sample.xps" ]
16
17 # Merge XPS files to the output PDF document
18 document.merge(files_to_merge, out_stream)
Давайте рассмотрим PdfSaveOptions. Используя этот класс, мы можем назначать различные параметры преобразования при объединении XPS с PDF.
- JpegQualityLevel регулирует качество изображения в документе PDF, если для алгоритма ImageCompression установлено значение JPEG. Его значение варьируется от 0 до 100.
- Алгоритм ImageCompression, инкапсулированный в перечисление PdfImageCompression, предлагает несколько вариантов, включая кодирование длины цикла (RLE), Flate, Lempel-Ziv-Welch (LZW) с базовым или оптимизированным предиктором, JPEG, нет (необработанное изображение). байт) и авто (наиболее подходящее сжатие для каждого изображения). По умолчанию установлено автоматическое сжатие.
- Алгоритм TextCompression, инкапсулированный в перечислении PdfTextCompression, предоставляет такие параметры, как кодирование длины прогона (RLE), Flate, Lempel-Ziv-Welch (LZW) и ничего. Значением по умолчанию при слиянии XPS с PDF является Flate.
- EncryptionDetails инкапсулировано в PdfEncryptionDetails. Он позволяет настраивать алгоритм шифрования, разрешения, пароли владельца и пользователя для PDF-документа.
- Параметры OutlineTreeExpansionLevel и OutlineTreeHeight регулируют вид структуры документа.