Создание миниатюр фигур презентаций на Android
Обзор
В этой статье мы покажем, как создавать миниатюры слайдов в различных ситуациях:
- Создание миниатюры фигуры внутри слайда.
- Создание миниатюры фигуры с пользовательскими размерами.
- Создание миниатюры фигуры в границах её внешнего вида.
Создать миниатюру фигуры из слайда
Чтобы создать миниатюру фигуры из любого слайда с помощью Aspose.Slides for Android via Java, выполните следующее:
- Создайте экземпляр класса Presentation.
- Получите ссылку на любой слайд, используя его идентификатор или индекс.
- Получите изображение миниатюры фигуры ссылки на слайд с масштабом по умолчанию.
- Сохраните изображение миниатюры в нужном вам формате изображения.
Этот пример кода показывает, как создать миниатюру фигуры из слайда:
// Создайте экземпляр класса Presentation, представляющего файл презентации
Presentation pres = new Presentation("Thumbnail.pptx");
try {
// Создайте изображение в полном масштабе
IImage slideImage = pres.getSlides().get_Item(0).getShapes().get_Item(0).getImage();
// Сохраните изображение на диск в формате PNG
try {
slideImage.save("output.png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
} finally {
if (pres != null) pres.dispose();
}
Создать миниатюру с пользовательским коэффициентом масштабирования
Чтобы создать миниатюру фигуры слайда с пользовательскими размерами, выполните следующее:
- Создайте экземпляр класса Presentation.
- Получите ссылку на любой слайд, используя его идентификатор или индекс.
- Получите изображение миниатюры фигуры ссылки на слайд с пользовательскими размерами.
- Сохраните изображение миниатюры в нужном вам формате изображения.
Этот пример кода показывает, как создать миниатюру фигуры на основе заданного коэффициента масштабирования:
// Создайте экземпляр класса Presentation, представляющего файл презентации
Presentation pres = new Presentation("Thumbnail.pptx");
try {
// Создайте изображение в полном масштабе
IImage slideImage = pres.getSlides().get_Item(0).getShapes().get_Item(0).getImage(ShapeThumbnailBounds.Shape, 1, 1);
// Сохраните изображение на диск в формате PNG
try {
slideImage.save("output.png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
} finally {
if (pres != null) pres.dispose();
}
Создать миниатюру фигуры на основе границ внешнего вида
Этот метод создания миниатюр фигур позволяет разработчикам генерировать миниатюру в границах внешнего вида фигуры. При этом учитываются все эффекты фигуры. Сгенерированная миниатюра ограничена границами слайда. Чтобы создать миниатюру фигуры слайда в границах её внешнего вида, выполните следующее:
- Создайте экземпляр класса Presentation.
- Получите ссылку на любой слайд, используя его идентификатор или индекс.
- Получите изображение миниатюры ссылки на слайд с границами фигуры в качестве внешнего вида.
- Сохраните изображение миниатюры в нужном вам формате изображения.
Этот пример кода основан на перечисленных шагах:
// Создайте экземпляр класса Presentation, представляющего файл презентации
Presentation pres = new Presentation("Thumbnail.pptx");
try {
// Создайте изображение в полном масштабе
IImage slideImage = pres.getSlides().get_Item(0).getShapes().get_Item(0).getImage(ShapeThumbnailBounds.Appearance, 1, 1);
// Сохраните изображение на диск в формате PNG
try {
slideImage.save("output.png", ImageFormat.Png);
} finally {
if (slideImage != null) slideImage.dispose();
}
} finally {
if (pres != null) pres.dispose();
}
Вопросы и ответы
Какие форматы изображений можно использовать при сохранении миниатюр фигур?
PNG, JPEG, BMP, GIF, TIFF, и другие. Фигуры также могут быть экспортированы как векторный SVG путем сохранения содержимого фигуры в формате SVG.
В чем разница между границами Shape и Appearance при рендеринге миниатюры?
Shape использует геометрию фигуры; Appearance учитывает визуальные эффекты (тени, свечения и т.п.).
Что происходит, если фигура помечена как скрытая? Будет ли она все равно отображаться как миниатюра?
Скрытая фигура остаётся частью модели и может быть отрисована; флаг скрытия влияет только на отображение в режиме слайд-шоу и не препятствует генерации изображения фигуры.
Поддерживаются ли групповые фигуры, диаграммы, SmartArt и другие сложные объекты?
Да. Любой объект, представленный как Shape (включая GroupShape, Chart и SmartArt), может быть сохранён как миниатюра или как SVG.
Влияют ли системные шрифты на качество миниатюр текстовых фигур?
Да. Необходимо предоставить требуемые шрифты (или настроить замену шрифтов), чтобы избежать нежелательных подстановок и переполнения текста.