Преобразование многостраничного документа в изображение

Aspose.Words для Python via .NET позволяет пользователям экспортировать многостраничные документы в растровые изображения. Это может быть полезно для создания предварительных просмотров, архивов или визуальных представлений документов для использования без редактирования.

Какие форматы поддерживают многостраничный экспорт?

Aspose.Words поддерживает многостраничный экспорт в следующие форматы растровых изображений:

  • Jpeg
  • Gif
  • Png
  • Bmp
  • Tiff
  • WebP

Как экспортировать многостраничный документ в изображение

Функция экспорта многостраничного документа в изображение реализована с помощью класса MultiPageLayout - вы можете указать, как должны быть организованы страницы при сохранении в изображение:

  • single_page – сохранить только первую из указанных страниц
  • grid – расположите страницы в виде сетки слева направо и сверху вниз, указав количество столбцов
  • horizontal – расположите страницы горизонтально, бок о бок, слева направо, в виде единого вывода
  • vertical – расположите страницы вертикально, одну под другой, в едином выводе
  • tiff_frames – оформить каждую страницу в виде отдельного кадра в многокадровом изображении TIFF, применимо только к форматам изображений TIFF

В следующем примере кода показано, как сохранить многостраничный DOCX документ в виде JPEG изображения с горизонтальным расположением:

doc = aw.Document(file_name='Rendering.docx')

options = aw.saving.ImageSaveOptions(aw.SaveFormat.JPEG)
# Set up Horizontal layout.
options.page_layout = MultiPageLayout.Horizontal(10);

doc.save(file_name='ImageSaveOptions.GridLayout.jpg', save_options=options)

Вы также можете настроить внешний вид страницы выходного файла – укажите back_color, border_color и border_width.

В следующем примере кода показано, как сохранить многостраничный DOCX документ в виде PNG изображения с разметкой сетки:

doc = aw.Document(file_name='Rendering.docx')

options = aw.saving.ImageSaveOptions(aw.SaveFormat.PNG)
# Set up a grid layout with:
# - 3 columns per row.
# - 10pts spacing between pages (horizontal and vertical).
options.page_layout = aw.saving.MultiPageLayout.grid(3, 10, 10)

# Customize the background and border.
options.page_layout.back_color = aspose.pydrawing.Color.light_gray
options.page_layout.border_color = aspose.pydrawing.Color.blue
options.page_layout.border_width = 2

doc.save(file_name='ImageSaveOptions.GridLayout.jpg', save_options=options)