Создание миниатюр для PowerPoint PPTX или PPT с использованием C++

Миниатюры обычно представляют собой изображения небольшого размера, которые показывают содержимое файлов и облегчают их прокрутку. Microsoft PowerPoint показывает миниатюры слайдов, которые упрощают прокрутку и открытие нужного слайда. Могут быть ситуации, когда вы хотите создать собственное приложение для просмотра PowerPoint и хотите динамически генерировать эскизы слайдов. В таких случаях эта статья научит вас программно создавать эскизы презентаций PowerPoint PPTX или PPT с помощью C++.

C++ API для создания эскизов для файлов PowerPoint PPTX/PPT

Для создания эскизов файлов PowerPoint мы будем использовать простой и удобный в использовании API Aspose.Slides for C++. Это надежный API, предоставляющий множество функций, помогающих создавать, читать и изменять файлы PowerPoint. API также предоставляет возможность создавать эскизы файлов PowerPoint. Для начала вы можете либо установить API через NuGet, либо загрузить его напрямую из раздела Загрузки.

PM> Install-Package Aspose.Slides.Cpp

Создание миниатюр для файлов PowerPoint PPTX/PPT с использованием C++

Ниже приведены шаги для создания эскизов файлов PowerPoint с помощью C++.

В следующем примере кода показано, как создавать эскизы файлов PowerPoint с помощью C++.

// Путь к исходному файлу
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation.pptx";

// Загрузите файл презентации
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// Пролистайте слайды
for (SharedPtr<ISlide> slide : presentation->get_Slides())
{
	// Создать миниатюру
	SharedPtr<System::Drawing::Bitmap> bitmap = slide->GetThumbnail(1, 1);

	// Сохраните файл JPEG
	bitmap->Save(String::Format(u"OutputDirectory\\GenerateThumbnail_out_{0}.jpg", slide->get_SlideNumber()), System::Drawing::Imaging::ImageFormat::get_Jpeg());
}

Создание эскизов с пользовательскими размерами

При создании миниатюр файлов PowerPoint вы также можете указать размеры миниатюр в соответствии с вашими требованиями. Чтобы указать нестандартные размеры при создании миниатюр, выполните следующие действия.

В следующем примере кода показано, как создавать эскизы с пользовательскими размерами с помощью C++.

// Путь к исходному файлу
const String sourceFilePath = u"SourceDirectory\\Slides\\SamplePresentation.pptx";

// Загрузите файл презентации
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// Пользовательский размер
int desiredX = 1200;
int desiredY = 800;

// Получение масштабированного значения X и Y
float ScaleX = (float)(1.0 / presentation->get_SlideSize()->get_Size().get_Width()) * desiredX;
float ScaleY = (float)(1.0 / presentation->get_SlideSize()->get_Size().get_Height()) * desiredY;

// Пролистайте слайды
for (SharedPtr<ISlide> slide : presentation->get_Slides())
{
	// Создать миниатюру
	SharedPtr<System::Drawing::Bitmap> bitmap = slide->GetThumbnail(ScaleX, ScaleY);

	// Сохраните файл JPEG
	bitmap->Save(String::Format(u"OutputDirectory\\GenerateThumbnailWithCustomDimensions_out_{0}.jpg", slide->get_SlideNumber()), System::Drawing::Imaging::ImageFormat::get_Jpeg());
}

Получить бесплатную лицензию

Чтобы попробовать API без ограничений на пробную версию, вы можете запросить бесплатную временную лицензию.

Вывод

В этой статье вы узнали, как создавать миниатюры для файлов PowerPoint PPTX/PPT с помощью C++. Кроме того, вы видели, как создавать миниатюры с нестандартными размерами. Чтобы узнать больше о функциях, предоставляемых Aspose.Slides for C++ API, вы можете посетить официальную документацию. Если у вас возникнут вопросы, обращайтесь к нам на бесплатный форум поддержки.

Смотрите также