Управление шрифтами в презентациях на Android
Contents
[
Hide
]
Управление свойствами шрифтов
Презентации обычно содержат как текст, так и изображения. Текст может быть отформатирован по‑разному: либо для выделения определённых разделов и слов, либо в соответствии с корпоративными стилями. Форматирование текста помогает пользователям изменять внешний вид содержимого презентации. В этой статье показано, как с помощью Aspose.Slides for Android via Java настроить свойства шрифтов абзацев текста на слайдах.
Чтобы управлять свойствами шрифта абзаца с помощью Aspose.Slides for Android via Java:
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, используя его индекс.
- Получите формы Placeholder на слайде и приведите их к типу AutoShape.
- Получите Paragraph из TextFrame, предоставляемого AutoShape.
- Выравнивайте абзац по ширине.
- Доступ к Paragraph и его текстовой Portion.
- Определите шрифт с помощью FontData и установите Font для текстовой Portion.
- Сделайте шрифт полужирным.
- Сделайте шрифт курсивным.
- Установите цвет шрифта с помощью FillFormat, предоставляемого объектом Portion.
- Сохраните изменённую презентацию в файл PPTX.
Ниже приведена реализация перечисленных шагов. Она берёт исходную презентацию без оформления и форматирует шрифты на одном из слайдов. Скриншоты ниже показывают исходный файл и то, как фрагменты кода изменяют его. Код меняет шрифт, цвет и стиль шрифта.
![]() |
|---|
| Рисунок: Текст в исходном файле |
![]() |
|---|
| Рисунок: Тот же текст с обновлённым форматированием |
// Создайте объект Presentation, который представляет файл PPTX
Presentation pres = new Presentation("FontProperties.pptx");
try {
// Доступ к слайду по его номеру
ISlide slide = pres.getSlides().get_Item(0);
// Получаем первый и второй placeholder на слайде и приводим их к типу AutoShape
ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();
// Доступ к первому абзацу
IParagraph para1 = tf1.getParagraphs().get_Item(0);
IParagraph para2 = tf2.getParagraphs().get_Item(0);
// Выравниваем абзац по ширине
para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);
// Доступ к первой части текста (portion)
IPortion port1 = para1.getPortions().get_Item(0);
IPortion port2 = para2.getPortions().get_Item(0);
// Определяем новые шрифты
FontData fd1 = new FontData("Elephant");
FontData fd2 = new FontData("Castellar");
// Применяем новые шрифты к части текста
port1.getPortionFormat().setLatinFont(fd1);
port2.getPortionFormat().setLatinFont(fd2);
// Делаем шрифт полужирным
port1.getPortionFormat().setFontBold(NullableBool.True);
port2.getPortionFormat().setFontBold(NullableBool.True);
// Делаем шрифт курсивным
port1.getPortionFormat().setFontItalic(NullableBool.True);
port2.getPortionFormat().setFontItalic(NullableBool.True);
// Устанавливаем цвет шрифта
port1.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port1.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
port2.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port2.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
// Сохраняем PPTX на диск
pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Установка свойств шрифта текста
Как упомянуто в разделе Управление свойствами шрифтов, объект Portion используется для хранения текста с одинаковым стилем форматирования в абзаце. В этой статье показано, как с помощью Aspose.Slides for Android via Java создать текстовое поле с некоторым текстом, а затем задать конкретный шрифт и различные другие свойства семейства шрифтов.
Чтобы создать текстовое поле и задать свойства шрифта текста в нём:
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, используя его индекс.
- Добавьте на слайд AutoShape типа Rectangle.
- Удалите стиль заливки, связанный с AutoShape.
- Получите TextFrame формы AutoShape.
- Добавьте некоторый текст в TextFrame.
- Доступ к объекту Portion, связанному с TextFrame.
- Определите шрифт, который будет использоваться для Portion.
- Установите другие свойства шрифта, такие как полужирный, курсив, подчёркивание, цвет и высота, используя соответствующие свойства объекта Portion.
- Запишите изменённую презентацию в файл PPTX.
Ниже приведена реализация перечисленных шагов.
![]() |
|---|
| Рисунок: Текст с некоторыми свойствами шрифта, установленными Aspose.Slides for Android via Java |
// Создать объект Presentation, представляющий файл PPTX
Presentation pres = new Presentation();
try {
// Получить первый слайд
ISlide sld = pres.getSlides().get_Item(0);
// Добавить AutoShape типа Rectangle
IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
// Удалить любой стиль заливки, связанный с AutoShape
ashp.getFillFormat().setFillType(FillType.NoFill);
// Получить TextFrame, связанный с AutoShape
ITextFrame tf = ashp.getTextFrame();
tf.setText("Aspose TextBox");
// Получить Portion, связанный с TextFrame
IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
// Установить шрифт для Portion
port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
// Установить свойство Bold у шрифта
port.getPortionFormat().setFontBold(NullableBool.True);
// Установить свойство Italic у шрифта
port.getPortionFormat().setFontItalic(NullableBool.True);
// Установить свойство Underline у шрифта
port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
// Установить высоту шрифта
port.getPortionFormat().setFontHeight(25);
// Установить цвет шрифта
port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Сохранить презентацию на диск
pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}


