Управление шрифтами в презентациях с помощью Java
Contents
[
Hide
]
Управление свойствами шрифта
Презентации обычно содержат как текст, так и изображения. Текст можно форматировать различными способами, либо чтобы выделить определённые разделы и слова, либо чтобы соответствовать корпоративному стилю. Форматирование текста помогает пользователям разнообразить внешний вид содержимого презентации. В этой статье показано, как с помощью Aspose.Slides for Java настроить свойства шрифта абзацев текста на слайдах.
Для управления свойствами шрифта абзаца с помощью Aspose.Slides for Java:
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, используя его индекс.
- Доступ к фигурам типа Placeholder на слайде и приведение их к типу AutoShape.
- Получите Paragraph из TextFrame, предоставляемого AutoShape.
- Выравнивание абзаца по ширине.
- Доступ к Portion текста абзаца.
- Определите шрифт с помощью FontData и установите Font у текста Portion соответственно.
- Установите шрифт полужирным.
- Установите шрифт курсивом.
- Установите цвет шрифта с помощью FillFormat, предоставляемого объектом Portion.
- Сохраните изменённую презентацию в файл PPTX.
Реализация вышеописанных шагов приведена ниже. Она берёт простую презентацию и форматирует шрифты на одном из слайдов. Скриншоты ниже показывают исходный файл и то, как кодовые фрагменты изменяют его. Код меняет шрифт, цвет и стиль шрифта.
![]() |
|---|
| Рисунок: Текст во входном файле |
![]() |
|---|
| Рисунок: Тот же текст с обновлённым форматированием |
// Создать объект Presentation, представляющий файл PPTX
Presentation pres = new Presentation("FontProperties.pptx");
try {
// Доступ к слайду по его позиции
ISlide slide = pres.getSlides().get_Item(0);
// Доступ к первому и второму заполнителю на слайде и приведение к типу 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);
// Доступ к первой части
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 Java создать текстовое поле с некоторым текстом и затем определить конкретный шрифт и различные другие свойства семейства шрифтов.
Для создания текстового поля и установки свойств шрифта текста в нём:
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, используя его индекс.
- Добавьте на слайд AutoShape типа Rectangle.
- Удалите стиль заливки, связанный с AutoShape.
- Доступ к TextFrame у AutoShape.
- Добавьте некоторый текст в TextFrame.
- Доступ к объекту Portion, связанному с TextFrame.
- Определите шрифт, который будет использоваться для Portion.
- Установите другие свойства шрифта, такие как полужирный, курсив, подчёркивание, цвет и высота, используя соответствующие свойства, предоставляемые объектом Portion.
- Запишите изменённую презентацию в файл PPTX.
Реализация вышеописанных шагов приведена ниже.
![]() |
|---|
| Рисунок: Текст с некоторыми установленными свойствами шрифта, заданными Aspose.Slides for 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();
}


