Работа с документом в PS-файле | Питон
Создать документ PS
Aspose.Page для Python через .NET включает два конструктора для создания класса PsDocument. Следующий фрагмент кода объясняет создание одностраничного документа PS:
1# The path to the documents directory.
2dir = Util.get_data_dir_working_with_document()
3
4# Create an output stream for a PostScript document
5with open(dir + "document.ps", "wb") as out_ps_stream:
6 # Create save options
7 options = PsSaveOptions()
8 # If you want to aassign a page size other than A4, set the page size in options
9 options.page_size = PageConstants.get_size(PageConstants.SIZE_A4, PageConstants.ORIENTATION_PORTRAIT)
10 # If you want to aassign page margins other empty, set the page margins in options
11 options.margins = PageConstants.get_margins(PageConstants.MARGINS_ZERO)
12 # If you plan to use fonts that located in non system folders, set additional fonts folders in options
13 options.additional_fonts_folders = [ dir ]
14
15 # Set a variable that indicates if resulting PostScript document will be multipaged
16 multi_paged = False
17
18 # Create a new multipaged PS Document with one page opened
19 document = PsDocument(out_ps_stream, options, multi_paged)
20
21 # Close the current page
22 document.close_page()
23 # Save the document
24 document.save()
Если вы хотите, чтобы документ PS был многостраничным, установите для переменной multiPaged значение true.
Другой конструктор позволяет создать объект PsDocument с определенным количеством страниц:
1with open(dir + "document.ps", "wb") as out_ps_stream:
2# Create save options
3options = PsSaveOptions()
4# If you want to assign the page size other than A4, set the page size in options
5options.page_size = PageConstants.get_size(PageConstants.SIZE_A4, PageConstants.ORIENTATION_PORTRAIT)
6# If you want to aassign page margins other empty, set the page margins in options
7options.margins = PageConstants.get_margins(PageConstants.MARGINS_ZERO)
8# If you plan to use fonts that located in non system folders, set additional fonts folders in options
9options.additional_fonts_folders = [ dir ]
10
11# Create a new multipaged PS Document with one page opened
12document = PsDocument(out_ps_stream, options, 2)
13
14# Close the current page
15document.close_page()
16# Save the document
17document.save()
Давайте взглянем на класс PsSaveOptions, который инкапсулирует возможные параметры, помогающие создать правильный документ PostScript.
Параметр SaveFormat определяет выходной формат документов: PS или EPS. В библиотеке Aspose.Page различия между этими двумя форматами в первую очередь отражаются в комментариях PostScript и расширении файла. Кроме того, согласно спецификации файла EPS, файлы EPS должны быть одностраничными. По умолчанию используется формат PS.
Параметр page_size определяет размер страниц в документе PS. Однако при необходимости можно назначить разные размеры для каждой страницы.
Размер страницы можно получить из класса PageConstants, как показано в следующем примере:
1options.page_size = PageConstants.get_size(PageConstants.SIZE_International, PageConstants.ORIENTATION_PORTRAIT);
Размер страницы по умолчанию — «А4» в «Портретной» ориентации.
- margins указывает пустые поля между границами страницы и левым, верхним, правым и нижним краями содержимого страницы. Его можно получить из класса PageConstants.
1options.margins = PageConstants.get_margins(PageConstants.MARGINS_SMALL)); // 20 points for each margin
Поля по умолчанию — «НОЛЬ» (0, 0, 0, 0).
- back_ground_color определяет цвет фона страницы. Может быть назначен как:
1options.back_ground_color = aspose.pydrawing.Color(211, 8, 48);
или:
1options.back_ground_color = aspose.pydrawing.Color.YELLOW;
Значение по умолчанию — «ноль», что означает отсутствие фона.
Параметр embed_fonts определяет выходной формат документов: PS или EPS. В библиотеке Aspose.Page различия между этими двумя форматами в первую очередь отражаются в комментариях PostScript и расширении файла. Кроме того, согласно спецификации файла EPS, файлы EPS должны быть одностраничными. По умолчанию используется формат PS.
Параметр embed_fonts_as определяет размер страниц в документе PS. Однако при необходимости можно назначить разные размеры для каждой страницы. Значение можно установить с помощью класса FontConstants, как показано ниже:
1options.embed_fonts_as = FontsConstants.EMBED_FONTS_TYPE3;
Значение по умолчанию — «TrueType».
Параметр jpeg_quality_level определяет уровень сжатия и качество изображений в результирующем PS-документе. Более высокое качество требует меньшего сжатия, и наоборот. Качество варьируется от 0 до 100, где 0 соответствует минимальному качеству, а 100 — максимальному. Значение по умолчанию — 75.
Параметр additional_fonts_folder указывает места, где можно найти шрифты. По умолчанию всегда включены папки системных шрифтов.
debug включает вывод отладочной информации на консоль. Значение по умолчанию — ложь.
Вы можете загрузить примеры и файлы данных с сайта GitHub.