Отображение слайдов презентации в виде SVG‑изображений на Android
Формат SVG
SVG — аббревиатура от Scalable Vector Graphics — это стандартный тип графики или формат, используемый для отображения двухмерных изображений. SVG хранит изображения как векторы в XML с деталями, определяющими их поведение или внешний вид.
SVG — один из немногих форматов изображений, отвечающих очень высоким требованиям в таких областях, как масштабируемость, интерактивность, производительность, доступность, программируемость и другие. По этим причинам его часто используют в веб‑разработке.
Вы можете захотеть использовать файлы SVG, когда нужно
- распечатать вашу презентацию в очень большом формате. SVG‑изображения могут масштабироваться до любого разрешения или уровня. Вы можете изменять размер SVG‑изображений столько раз, сколько необходимо, без потери качества.
- использовать диаграммы и графики из ваших слайдов в разных носителях или платформах. Большинство просмотрщиков могут интерпретировать SVG‑файлы.
- использовать наименьшие возможные размеры изображений. SVG‑файлы обычно меньше их высокоразрешённых аналогов в других форматах, особенно в форматах, основанных на растровой графике (JPEG или PNG).
Отрисовать слайд как SVG‑изображение
Aspose.Slides for Android via Java позволяет экспортировать слайды в ваших презентациях как SVG‑изображения. Выполните следующие шаги для создания SVG‑изображений:
- Создайте экземпляр класса Presentation.
- Переберите все слайды в презентации.
- Запишите каждый слайд в отдельный SVG‑файл с помощью FileOutputStream.
Этот пример кода на Java показывает, как преобразовать PPT в SVG с помощью Aspose.Slides:
Presentation pres = new Presentation("pres.pptx");
try {
for (int index = 0; index < pres.getSlides().size(); index++)
{
ISlide slide = pres.getSlides().get_Item(index);
FileOutputStream fileStream = new FileOutputStream("slide-" + index + ".svg");
try {
slide.writeAsSvg(fileStream);
} finally {
fileStream.close();
}
}
} catch(IOException e) {
} finally {
if (pres != null) pres.dispose();
}
FAQ
Почему полученный SVG может выглядеть по‑разному в разных браузерах?
Поддержка отдельных возможностей SVG реализована по‑разному движками браузеров. Параметры SVGOptions помогают сгладить несовместимости.
Можно ли экспортировать не только слайды, но и отдельные фигуры в SVG?
Да. Любую фигуру можно сохранить как отдельный SVG, что удобно для иконок, пиктограмм и повторного использования графики.
Можно ли объединить несколько слайдов в один SVG (полоса/документ)?
Стандартный сценарий — один слайд → один SVG. Объединение нескольких слайдов в один SVG‑канвас — это постобработка, выполняемая на уровне приложения.