Отрисовка слайда как SVG-изображения

Contents
[ ]

SVG — аббревиатура от Scalable Vector Graphics — это стандартный графический тип или формат, используемый для отображения двумерных изображений. SVG сохраняет изображения в виде векторов в XML с деталями, которые определяют их поведение или внешний вид.

SVG является одним из немногих форматов для изображений, который соответствует очень высоким стандартам в таких категориях, как: масштабируемость, интерактивность, производительность, доступность, программируемость и другие. По этим причинам он широко используется в веб-разработке.

Вы можете использовать SVG-файлы в следующих сценариях:

  • когда вы планируете печатать свою презентацию в очень крупном формате. SVG-изображения могут масштабироваться до любого разрешения или уровня. Вы можете изменять размер SVG-изображений столько раз, сколько необходимо, не жертвуя качеством.
  • когда вы намерены использовать диаграммы и графики из ваших слайдов на различных других носителях или платформах. Большинство считывателей могут интерпретировать SVG-файлы.
  • когда вам нужно использовать как можно меньшие размеры изображений. SVG-файлы, как правило, меньше по размеру, чем их эквиваленты с высоким разрешением в других форматах, особенно в тех, которые основаны на растровой графике (JPEG или PNG).

Aspose.Slides для .NET позволяет экспортировать слайды ваших презентаций в SVG-изображения. Чтобы сгенерировать SVG-изображение из любого слайда, выполните следующие действия:

  • Создайте экземпляр класса Presentation.
  • Переберите все слайды в презентации.
  • Запишите каждый слайд в отдельный SVG-файл через FileStream.

Этот образец кода на C# показывает, как конвертировать PPT в SVG с использованием Aspose.Slides:

using (Presentation pres = new Presentation("pres.pptx"))
{
    for (var index = 0; index < pres.Slides.Count; index++)
    {
        ISlide slide = pres.Slides[index];

        using (FileStream fileStream = new FileStream($"slide-{index}.svg", FileMode.Create, FileAccess.Write))
        {
            slide.WriteAsSvg(fileStream);   
        }
    }
}