Конвертировать слайд
Aspose.Slides для Python через .NET позволяет вам конвертировать слайды (в презентациях) в изображения. Поддерживаемые форматы изображений: BMP, PNG, JPG (JPEG), GIF и другие.
Чтобы конвертировать слайд в изображение, выполните следующее:
- Сначала конвертируйте слайд в Bitmap, используя метод get_image.
- Затем установите дополнительные параметры для конвертации и конвертируемые объекты слайдов через
- интерфейс ITiffOptions или
- интерфейс IRenderingOptions.
О Bitmap и других форматах изображений
В .NET Bitmap — это объект, который позволяет вам работать с изображениями, определенными по данным пикселей. Вы можете использовать экземпляр этого класса для сохранения изображений в широком диапазоне форматов (BMP, JPG, PNG и т.д.).
Информация
Aspose недавно разработала онлайн конвертер Text to GIF.Конвертирование слайдов в Bitmap и сохранение изображений в PNG
Этот код на Python показывает, как конвертировать первый слайд презентации в объект bitmap, а затем как сохранить изображение в формате PNG:
import aspose.slides as slides
with slides.Presentation("Presentation.pptx") as pres:
# Конвертирует первый слайд в объект Bitmap
with pres.slides[0].get_image() as bmp:
# Сохраняет изображение в формате PNG
bmp.save("Slide_0.png", slides.ImageFormat.PNG)
Совет
Вы можете конвертировать слайд в объект bitmap и затем использовать объект прямо где-то. Или вы можете конвертировать слайд в bitmap, а затем сохранить изображение в JPEG или любом другом формате на ваш выбор.Конвертирование слайдов в изображения с пользовательскими размерами
Вам может потребоваться получить изображение определенного размера. Используя перегрузку метода get_image, вы можете конвертировать слайд в изображение с конкретными размерами (длина и ширина).
Этот пример кода демонстрирует предложенную конвертацию, используя метод get_image на Python:
import aspose.pydrawing as draw
import aspose.slides as slides
with slides.Presentation("Presentation.pptx") as pres:
# Конвертирует первый слайд в Bitmap с указанным размером
with pres.slides[0].get_image(draw.Size(1820, 1040)) as bmp:
# Сохраняет изображение в формате JPEG
bmp.save("Slide_0.jpg", slides.ImageFormat.JPEG)
Конвертирование слайдов с заметками и комментариями в изображения
Некоторые слайды содержат заметки и комментарии.
Aspose.Slides предоставляет два интерфейса — ITiffOptions и IRenderingOptions — которые позволяют вам контролировать рендеринг слайдов презентации в изображения. Оба интерфейса содержат интерфейс INotesCommentsLayoutingOptions, который позволяет добавлять заметки и комментарии на слайд при конвертации этого слайда в изображение.
Информация
С помощью интерфейса INotesCommentsLayoutingOptions вы можете указать желаемую позицию для заметок и комментариев в результирующем изображении.Этот код на Python демонстрирует процесс конвертации слайда с заметками и комментариями:
import aspose.pydrawing as draw
import aspose.slides as slides
with slides.Presentation("AddNotesSlideWithNotesStyle_out.pptx") as pres:
# Создает параметры рендеринга
options = slides.export.RenderingOptions()
# Устанавливает позицию заметок на странице
options.notes_comments_layouting.notes_position = slides.export.NotesPositions.BOTTOM_TRUNCATED
# Устанавливает позицию комментариев на странице
options.notes_comments_layouting.comments_position = slides.export.CommentsPositions.RIGHT
# Устанавливает ширину области вывода комментариев
options.notes_comments_layouting.comments_area_width = 500
# Устанавливает цвет области комментариев
options.notes_comments_layouting.comments_area_color = draw.Color.antique_white
# Конвертирует первый слайд презентации в объект Bitmap
with pres.slides[0].get_image(options, 2, 2) as bmp:
# Сохраняет изображение в формате GIF
bmp.save("Slide_Notes_Comments_0.gif", slides.ImageFormat.GIF)
Замечание
В процессе конвертации любого слайда в изображение свойство NotesPositions не может быть установлено в BottomFull (для указания позиции для заметок), потому что текст заметки может быть большим, что означает, что он может не поместиться в установленный размер изображения.Конвертирование слайдов в изображения с использованием ITiffOptions
Интерфейс ITiffOptions дает вам больший контроль (в терминах параметров) над результирующим изображением. Используя этот интерфейс, вы можете указать размер, разрешение, цветовую палитру и другие параметры для результирующего изображения.
Этот код на Python демонстрирует процесс конвертации, в котором ITiffOptions используется для вывода черно-белого изображения с разрешением 300dpi и размером 2160 × 2800:
import aspose.pydrawing as draw
import aspose.slides as slides
with slides.Presentation(path + "Comments1.pptx") as pres:
# Получает слайд по его индексу
slide = pres.slides[0]
# Создает объект TiffOptions
options = slides.export.TiffOptions()
options.image_size = draw.Size(2160, 2880)
# Устанавливает шрифт, используемый в случае, если исходный шрифт не найден
options.default_regular_font = "Arial Black"
# Устанавливает позицию заметок на странице
options.notes_comments_layouting.notes_position = slides.export.NotesPositions.BOTTOM_TRUNCATED
# Устанавливает формат пикселей (черно-белый)
options.pixel_format = slides.export.ImagePixelFormat.FORMAT_1BPP_INDEXED
# Устанавливает разрешение
options.dpi_x = 300
options.dpi_y = 300
# Конвертирует слайд в объект Bitmap
with slide.get_image(options) as bmp:
# Сохраняет изображение в формате BMP
bmp.save("PresentationNotesComments.tiff", slides.ImageFormat.TIFF)
Конвертирование всех слайдов в изображения
Aspose.Slides позволяет вам конвертировать все слайды в одной презентации в изображения. По сути, вы можете конвертировать презентацию (в целом) в изображения.
Этот пример кода показывает, как конвертировать все слайды в презентации в изображения на Python:
import aspose.slides as slides
with slides.Presentation("Presentation.pptx") as pres:
# Рендерит презентацию в массив изображений по слайдам
for i in range(len(pres.slides)):
# Указывает настройки для скрытых слайдов (не рендерить скрытые слайды)
if pres.slides[i].hidden:
continue
# Конвертирует слайд в объект Bitmap
with pres.slides[i].get_image() as bmp:
# Сохраняет изображение в формате JPEG
bmp.save("image_{0}.jpeg".format(i), slides.ImageFormat.JPEG)