Конвертировать PPT и PPTX в JPG на C++
Обзор
Преобразование презентаций PowerPoint и OpenDocument в JPG‑изображения упрощает обмен слайдами, повышает производительность и позволяет внедрять контент в веб‑сайты или приложения. Aspose.Slides for C++ позволяет преобразовать файлы PPTX, PPT и ODP в изображения высокого качества формата JPEG. В этом руководстве объясняются различные методы конвертации.
Благодаря этим возможностям легко реализовать собственный просмотрщик презентаций и создать миниатюру для каждого слайда. Это может быть полезно, если нужно защитить слайды от копирования или продемонстрировать презентацию в режиме только для чтения. Aspose.Slides позволяет конвертировать всю презентацию или отдельный слайд в графические форматы.
Конвертирование слайдов презентации в JPG‑изображения
Вот шаги для преобразования файлов PPT, PPTX или ODP в JPG:
- Создайте экземпляр класса Presentation.
- Получите объект слайда типа ISlide из коллекции слайдов презентации.
- Создайте изображение слайда с помощью метода ISlide.GetImage.
- Вызовите метод IImage.Save у объекта изображения. Передайте имя выходного файла и формат изображения в качестве аргументов.
float scaleX = 1.0f;
float scaleY = scaleX;
auto presentation = MakeObject<Presentation>(u"PowerPoint-Presentation.ppt");
for (auto&& slide : presentation->get_Slides())
{
// Создать изображение слайда с указанным масштабом.
auto image = slide->GetImage(scaleX, scaleY);
// Сохранить изображение на диск в формате JPEG.
auto fileName = String::Format(u"Slide_{0}.jpg", slide->get_SlideNumber());
image->Save(fileName, ImageFormat::Jpeg);
image->Dispose();
}
presentation->Dispose();
Конвертирование слайдов в JPG с пользовательскими размерами
Чтобы изменить размеры получаемых JPG‑изображений, можно задать размер изображения, передав его в метод ISlide.GetImage(Size). Это позволяет создавать изображения с конкретными шириной и высотой, гарантируя, что результат будет соответствовать требованиям по разрешению и соотношению сторон. Такая гибкость особенно полезна при генерации изображений для веб‑приложений, отчетов или документации, где требуются точные размеры.
Size imageSize(1200, 800);
auto presentation = MakeObject<Presentation>(u"PowerPoint-Presentation.pptx");
for (auto&& slide : presentation->get_Slides())
{
// Создать изображение слайда заданного размера.
auto image = slide->GetImage(imageSize);
// Сохранить изображение на диск в формате JPEG.
auto fileName = System::String::Format(u"Slide_{0}.jpg", slide->get_SlideNumber());
image->Save(fileName, ImageFormat::Jpeg);
image->Dispose();
}
presentation->Dispose();
Отображение комментариев при сохранении слайдов как изображений
Aspose.Slides for C++ предоставляет возможность рендерить комментарии на слайдах презентации при их конвертации в JPG‑изображения. Эта функция особенно полезна для сохранения аннотаций, отзывов или обсуждений, добавленных соавторами в PowerPoint. Включив эту опцию, вы гарантируете, что комментарии будут видимы на сгенерированных изображениях, облегчая просмотр и обмен обратной связью без необходимости открывать исходный файл презентации.
Предположим, у нас есть файл презентации «sample.pptx» со слайдом, содержащим комментарии:

Следующий код C++ конвертирует слайд в JPG‑изображение, сохраняя комментарии:
float scaleX = 2.0f;
float scaleY = scaleX;
auto presentation = MakeObject<Presentation>(u"sample.pptx");
{
auto commentOptions = MakeObject<NotesCommentsLayoutingOptions>();
commentOptions->set_CommentsPosition(CommentsPositions::Right);
commentOptions->set_CommentsAreaWidth(200);
commentOptions->set_CommentsAreaColor(Color::get_DarkOrange());
// Установить параметры комментариев слайда.
auto options = MakeObject<RenderingOptions>();
options->set_SlidesLayoutOptions(commentOptions);
// Преобразовать первый слайд в изображение.
auto image = presentation->get_Slide(0)->GetImage(options, scaleX, scaleY);
image->Save(u"Slide_1.jpg", ImageFormat::Jpeg);
image->Dispose();
}
presentation->Dispose();
Результат:

См. также
Смотрите другие варианты конвертации PPT, PPTX или ODP в изображения, например:
- Конвертировать PowerPoint в GIF
- Конвертировать PowerPoint в PNG
- Конвертировать PowerPoint в TIFF
- Конвертировать PowerPoint в SVG

Tip
Aspose предлагает БЕСПЛАТНОЕ веб‑приложение Collage. С помощью этой онлайн‑службы вы можете объединять JPG в JPG или PNG в PNG, создавать фото‑коллажи и многое другое.
Используя те же принципы, описанные в этой статье, вы можете конвертировать изображения из одного формата в другой. Подробнее см. на страницах: конвертировать изображение в JPG; конвертировать JPG в изображение; конвертировать JPG в PNG, конвертировать PNG в JPG; конвертировать PNG в SVG, конвертировать SVG в PNG.
FAQ
Поддерживает ли этот метод пакетную конвертацию?
Да, Aspose.Slides позволяет выполнять пакетную конвертацию нескольких слайдов в JPG за одну операцию.
Поддерживает ли конвертация SmartArt, диаграммы и другие сложные объекты?
Да, Aspose.Slides рендерит всё содержимое, включая SmartArt, диаграммы, таблицы, фигуры и т.д. Однако точность рендеринга может незначительно отличаться от PowerPoint, особенно при использовании пользовательских или отсутствующих шрифтов.
Есть ли ограничения на количество обрабатываемых слайдов?
Сам Aspose.Slides не накладывает жёстких ограничений на количество слайдов. Однако при работе с большими презентациями или изображениями высокого разрешения может возникнуть ошибка «недостаточно памяти».