Создание презентаций на C++

Обзор

В этой статье показано, как создать презентацию в Aspose.Slides, добавить текстовое поле на её первый слайд и сохранить результат в файл. Краткий раздел FAQ в конце охватывает часто задаваемые вопросы о форматах, шаблонах, размере слайдов, единицах измерения, использовании памяти, потоках, лицензировании, цифровых подписях и поддержке VBA.

Прежде чем начать, добавьте Aspose.Slides в ваш проект: из NuGet в проекте Visual Studio на Windows или из ZIP‑пакета с CMake на Linux. См. Установка.

Создание презентации PowerPoint

Чтобы создать презентацию и поместить текстовое поле на её первый слайд, выполните следующие шаги:

  1. Создайте экземпляр класса Презентация. Новая презентация уже содержит один пустой слайд.
  2. Получите этот слайд с помощью метода Presentation::get_Slide и его индекс, 0.
  3. Добавьте прямоугольник с помощью метода IShapeCollection::AddAutoShape и задайте его текст через метод ITextFrame::set_Text.
  4. Сохраните презентацию как файл PPTX с помощью метода Presentation::Save.
#include <DOM/Presentation.h>
#include <DOM/ISlide.h>
#include <DOM/IShapeCollection.h>
#include <DOM/IAutoShape.h>
#include <DOM/ITextFrame.h>
#include <DOM/ShapeType.h>
#include <Export/SaveFormat.h>
#include <system/smart_ptr.h>

using namespace Aspose::Slides;
using namespace Aspose::Slides::Export;
using namespace System;

int main()
{
    auto presentation = MakeObject<Presentation>();
    auto slide = presentation->get_Slide(0);
    auto shape = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 50, 50, 400, 100);
    shape->get_TextFrame()->set_Text(u"Hello, Aspose.Slides!");
    presentation->Save(u"hello.pptx", SaveFormat::Pptx);
    presentation->Dispose();
    return 0;
}

Верхний левый угол прямоугольника находится на расстоянии 50 пунктов от левого края и 50 пунктов от верхнего края слайда, а ширина прямоугольника — 400 пунктов, высота — 100 пунктов. Программа сохраняет hello.pptx в текущем рабочем каталоге, создавая один слайд, содержащий прямоугольник и его текст. Без лицензии Aspose.Slides также добавляет водяной знак оценки к каждому сохраняемому слайду; см. Лицензирование.

FAQ

В какие форматы я могу сохранить новую презентацию?

Вы можете сохранять в PPTX, PPT и ODP, а также экспортировать в PDF, XPS, HTML, SVG и изображения, и др.

Могу ли я начать с шаблона (POTX/POTM) и сохранить как обычный PPTX?

Да. Загрузите шаблон и сохраните в нужный формат; форматы POTX/POTM/PPTM и аналогичные поддерживаются.

Как управлять размером/соотношением сторон слайда при создании презентации?

Установите размер слайда (включая предустановки, такие как 4:3 и 16:9, или пользовательские размеры) и выберите, как должен масштабироваться контент.

В каких единицах измеряются размеры и координаты?

В пунктах: 1 дюйм равен 72 единицам.

Как работать с очень большими презентациями (с множеством медиафайлов), чтобы снизить использование памяти?

Используйте стратегии управления BLOB, ограничьте хранение в памяти, используя временные файлы, и предпочтительно используйте файловые рабочие процессы вместо полностью потоковых в памяти.

Могу ли я создавать/сохранять презентации параллельно?

Вы не можете работать с тем же экземпляром Presentation из нескольких потоков. Запускайте отдельные, изолированные экземпляры для каждого потока или процесса.

Как удалить пробный водяной знак и ограничения?

Примените лицензию один раз на процесс. XML‑файл лицензии должен оставаться неизменным, а настройка лицензии должна быть синхронизирована, если задействовано несколько потоков.

Могу ли я цифрово подписать создаваемый PPTX?

Да. Цифровые подписи (добавление и проверка) поддерживаются для презентаций.

Поддерживаются ли макросы (VBA) в созданных презентациях?

Да. Вы можете создавать/редактировать проекты VBA и сохранять файлы с поддержкой макросов, такие как PPTM/PPSM.