Конвертировать PowerPoint в PNG на C#

Обзор

В этой статье объясняется, как конвертировать презентацию PowerPoint в формат PNG с использованием C#. Она охватывает следующие темы.

C# PowerPoint в PNG

Для получения примера кода на C# для конвертации PowerPoint в PNG, пожалуйста, смотрите раздел ниже т.е. Конвертировать PowerPoint в PNG. Код может загружать различные форматы, такие как PPT, PPTX и ODP в объект Presentation, а затем сохранять миниатюру его слайдов в формате PNG. Другие конверсии PowerPoint в изображение, которые более или менее похожи, такие как JPG, BMP, TIFF и SVG, обсуждаются в этих статьях.

О конверсии PowerPoint в PNG

Формат PNG (Portable Network Graphics) не так популярен, как JPEG (Joint Photographic Experts Group), но все же весьма распространен.

Случай использования: Когда у вас есть сложное изображение и размер не является проблемой, PNG является лучшим форматом изображения, чем JPEG.

Конвертировать PowerPoint в PNG

Пройдите через следующие шаги:

  1. Создайте объект класса Presentation.
  2. Получите объект слайда из коллекции Presentation.Slides под интерфейсом ISlide.
  3. Используйте метод ISlideGetThumbnail, чтобы получить миниатюру для каждого слайда.
  4. Используйте метод IPresentation.SaveMethod(String, SaveFormat, ISaveOptions, чтобы сохранить миниатюру слайда в формате PNG.

Этот код на C# показывает, как конвертировать презентацию PowerPoint в PNG. Объект Presentation может загружать PPT, PPTX, ODP и т.д., затем каждый слайд в объекте презентации конвертируется в формат PNG или другие форматы изображений.

using (Presentation pres = new Presentation("pres.pptx"))
{
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];
        slide.GetThumbnail().Save($"slide_{index}.png", ImageFormat.Png);
    }
}

Конвертировать PowerPoint в PNG с помощью пользовательских размеров

Если вы хотите получить PNG файлы с определенной масштабностью, вы можете установить значения для desiredX и desiredY, которые определяют размеры полученной миниатюры.

Этот код на C# демонстрирует описанную операцию:

using (Presentation pres = new Presentation("pres.pptx"))
{
    float scaleX = 2f;
    float scaleY = 2f;
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];
        slide.GetThumbnail(scaleX, scaleY).Save($"slide_{index}.png", ImageFormat.Png); 
    }
}

Конвертировать PowerPoint в PNG с определенным размером

Если вы хотите получить PNG файлы определенного размера, вы можете передать свои предпочтительные аргументы width и height для ImageSize.

Этот код показывает, как конвертировать PowerPoint в PNG, указывая размер для изображений:

using (Presentation pres = new Presentation("pres.pptx"))
{
    Size size = new Size(960, 720);
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];
        slide.GetThumbnail(size).Save($"slide_{index}.png", ImageFormat.Png);
    }
}