Конвертировать презентации PowerPoint в TIFF на C++

Обзор

TIFF (Tagged Image File Format) — широко используемый без потерь растровый формат изображений, известный своим исключительным качеством и детальным сохранением графики. Дизайнеры, фотографы и desktop‑издатели часто выбирают TIFF для сохранения слоёв, точности цветов и оригинальных настроек в своих изображениях.

С помощью Aspose.Slides вы можете без труда преобразовать ваши слайды PowerPoint (PPT, PPTX) и слайды OpenDocument (ODP) напрямую в изображения TIFF высокого качества, обеспечивая сохранение максимальной визуальной точности ваших презентаций.

Преобразовать презентацию в TIFF

С помощью метода Save класса Presentation вы можете быстро преобразовать всю презентацию PowerPoint в TIFF. Полученные изображения TIFF соответствуют размеру слайда по умолчанию.

Этот код C++ демонстрирует, как преобразовать презентацию PowerPoint в TIFF:

// Создайте объект класса Presentation, который представляет файл презентации (PPT, PPTX, ODP и т.д.).
auto presentation = MakeObject<Presentation>(u"Demo_File.pptx");

// Сохраните презентацию в формате TIFF.
presentation->Save(u"Output.tiff", SaveFormat::Tiff);

presentation->Dispose();

Преобразовать презентацию в черно‑белый TIFF

Метод set_BwConversionMode в классе TiffOptions позволяет указать алгоритм, используемый при преобразовании цветного слайда или изображения в черно‑белый TIFF. Обратите внимание, что эта настройка применяется только когда метод set_CompressionType установлен в CCITT4 или CCITT3.

Предположим, у нас есть файл “sample.pptx” со следующим слайдом:

Слайд презентации

Этот код C++ демонстрирует, как преобразовать цветной слайд в черно‑белый TIFF:

auto tiffOptions = MakeObject<TiffOptions>();
tiffOptions->set_CompressionType(TiffCompressionTypes::CCITT4);
tiffOptions->set_BwConversionMode(BlackWhiteConversionMode::Dithering);

auto presentation = MakeObject<Presentation>(u"sample.pptx");
presentation->Save(u"output.tiff", SaveFormat::Tiff, tiffOptions);

presentation->Dispose();

Результат:

Черно‑белый TIFF

Преобразовать презентацию в TIFF с пользовательским размером

Если вам нужен TIFF‑изображение с определёнными размерами, вы можете задать нужные значения с помощью методов, доступных в классе TiffOptions. Например, метод set_ImageSize позволяет определить размер получаемого изображения.

Этот код C++ демонстрирует, как преобразовать презентацию PowerPoint в изображения TIFF с пользовательским размером:

// Создайте объект класса Presentation, который представляет файл презентации (PPT, PPTX, ODP и т.д.).
auto presentation = MakeObject<Presentation>(u"sample.pptx");

auto tiffOptions = MakeObject<TiffOptions>();

// Установите тип сжатия.
tiffOptions->set_CompressionType(TiffCompressionTypes::Default);
/*
Типы сжатия:
    Default - Указывает схему сжатия по умолчанию (LZW).
    None - Указывает отсутствие сжатия.
    CCITT3
    CCITT4
    LZW
    RLE
*/

// Глубина зависит от типа сжатия и не может быть установлена вручную.

// Установите DPI изображения.
tiffOptions->set_DpiX(200);
tiffOptions->set_DpiY(200);

// Установите размер изображения.
tiffOptions->set_ImageSize(System::Drawing::Size(1728, 1078));

auto notesOptions = MakeObject<NotesCommentsLayoutingOptions>();
notesOptions->set_NotesPosition(NotesPositions::BottomFull);
tiffOptions->set_SlidesLayoutOptions(notesOptions);

// Сохраните презентацию в формате TIFF с указанным размером.
presentation->Save(u"custom_size.tiff", SaveFormat::Tiff, tiffOptions);

presentation->Dispose();

Преобразовать презентацию в TIFF с пользовательским форматом пикселей изображения

С помощью метода set_PixelFormat класса TiffOptions вы можете указать предпочитаемый формат пикселей для получаемого TIFF‑изображения.

Этот код C++ демонстрирует, как преобразовать презентацию PowerPoint в изображение TIFF с пользовательским форматом пикселей:

// Создайте объект класса Presentation, который представляет файл презентации (PPT, PPTX, ODP и т.д.).
auto presentation = MakeObject<Presentation>(u"Demo_File.pptx");

auto tiffOptions = MakeObject<TiffOptions>();

tiffOptions->set_PixelFormat(ImagePixelFormat::Format8bppIndexed);
/*
ImagePixelFormat содержит следующие значения (как указано в документации):
    Format1bppIndexed - 1 бит на пиксель, индексированный.
    Format4bppIndexed - 4 бита на пиксель, индексированный.
    Format8bppIndexed - 8 бит на пиксель, индексированный.
    Format24bppRgb    - 24 бита на пиксель, RGB.
    Format32bppArgb   - 32 бита на пиксель, ARGB.
*/

// Сохраните презентацию в формате TIFF с указанным размером изображения.
presentation->Save(u"Custom_Image_Pixel_Format.tiff", SaveFormat::Tiff, tiffOptions);

presentation->Dispose();

Часто задаваемые вопросы

Можно ли конвертировать отдельный слайд вместо всей презентации PowerPoint в TIFF?

Да. Aspose.Slides позволяет конвертировать отдельные слайды из презентаций PowerPoint и OpenDocument в отдельные изображения TIFF.

Существует ли ограничение на количество слайдов при конвертации презентации в TIFF?

Нет, Aspose.Slides не накладывает ограничений на количество слайдов. Вы можете конвертировать презентации любого объёма в формат TIFF.

Сохраняются ли анимации и эффекты переходов PowerPoint при конвертации слайдов в TIFF?

Нет, TIFF — статичный формат изображения. Поэтому анимации и эффекты переходов не сохраняются; экспортируются только статические снимки слайдов.