Jane z
Jane z
Читать 3 минуты

Добавить верхний индекс и нижний индекс в PowerPoint с помощью Java

Когда мы добавляем товарный знак, авторское право или другой символ в нашу презентацию, мы можем захотеть, чтобы этот символ появлялся немного выше или ниже определенного текста. В Microsoft PowerPoint мы можем реализовать этот эффект, просто применив форматирование надстрочного или подстрочного индекса к символу. В этой статье мы покажем, как решить эту задачу программно с помощью Free Spire.Presentation for Java.

Конфигурация среды

Метод 1: Загрузите пакет Free Spire.Presentation for Java и распакуйте его, а затем импортируйте пакет jar в папку lib как зависимость непосредственно в приложение Java.

Метод 2: Установите пакет jar через репозиторий Maven, и код для настройки файла pom.xml выглядит следующим образом:

<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.presentation.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>

Шаги и пример кода

Free Spire.Presentation for Java предоставляет метод PortionEx.getFormat().setScriptDistance(float value) для применения форматирования надстрочного или подстрочного индекса к тексту. Значение может быть установлено как положительное или отрицательное. Чем больше положительное значение, тем выше будет верхний индекс над вашим текстом. Чем меньше отрицательное значение, тем ниже будет отображаться нижний индекс под вашим текстом. Подробные шаги следующие:

  1. Создайте экземпляр Presentation и загрузите документ PowerPoint с помощью метода Presentation.loadFromFile().
  2. Получите нужный слайд с помощью метода Presentation.getSlides().get().
  3. Добавьте фигуру на слайд с помощью метода ISlide.getShapes().appendShape() и задайте тип заливки фигуры и цвет линии.
  4. Получите доступ к текстовому фрейму фигуры с помощью метода IAutoShape.getTextFrame(), затем очистите абзац по умолчанию в текстовом фрейме с помощью метода ITextFrameProperties.getParagraphs().clear().
  5. Создайте абзац, используя класс ParagraphEx, и добавьте обычный текст в абзац, используя метод ParagraphEx.setText().
    Создайте часть с текстом, используя класс PortionEx, а затем примените форматирование верхнего или нижнего индекса к тексту, используя метод PortionEx.getFormat().setScriptDistance(float value).
  6. Установите цвет текста, шрифт и размер шрифта для обычного текста и надстрочного или подстрочного текста.
  7. Добавьте абзац к текстовому фрейму фигуры, используя метод ITextFrameProperties.getParagraphs().append().
  8. Сохраните результирующий документ с помощью метода Presentation.saveToFile().
import com.spire.presentation.*;
import com.spire.presentation.drawing.*;

import java.awt.*;

public class AddSuperscriptAndSubscript {
public static void main(String []args) throws Exception {

//Загрузите документ PowerPoint Presentation presentation = new Presentation();
presentation.loadFromFile("template.pptx");

//Получить первый слайд
ISlide slide = presentation.getSlides().get(0);

//Добавьте фигуру на слайд
IAutoShape shape = slide.getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle(150, 100, 200, 50));
shape.getFill().setFillType(FillFormatType.NONE); shape.getShapeStyle().getLineColor().setColor(Color.white); //Доступ к текстовому фрейму фигуры ITextFrameProperties textFrame = shape.getTextFrame();
//Clear the default paragraph in the text frame
textFrame.getParagraphs().clear();

//Создать абзац с обычным текстом ParagraphEx para = new ParagraphEx();
para.setText("E=mc");

//Создайте часть с надстрочным текстом
PortionEx tr = new PortionEx("2");
tr.getFormat().setScriptDistance(40);

//Присоединить часть к абзацу para.getTextRanges().append(tr);

para.getTextRanges().append(new PortionEx("\n"));

//Установите цвет текста, шрифт и размер шрифта для обычного текста
tr = para.getTextRanges().get(0);
tr.getFill().setFillType(FillFormatType.SOLID);
tr.getFill().getSolidColor().setColor(new Color(128,0,128));
tr.setFontHeight(20);
tr.setLatinFont(new TextFont("Arial"));

//Установите цвет текста и шрифт для надстрочного текста
tr = para.getTextRanges().get(1);
tr.getFill().setFillType(FillFormatType.SOLID); tr.getFill().getSolidColor().setColor(Color.BLUE); tr.setLatinFont(new TextFont("Arial"));

//Добавьте абзац к текстовому фрейму фигуры
textFrame.getParagraphs().append(para);

//Создать еще один абзац с обычным текстом para = new ParagraphEx();
para.setText("X");

//Создайте часть с подстрочным текстом
tr = new PortionEx("100");
tr.getFormat().setScriptDistance(-25);

//Присоединить часть к абзацу para.getTextRanges().append(tr);

//Установите цвет текста, шрифт и размер шрифта для обычного текста
tr = para.getTextRanges().get(0);
tr.getFill().setFillType(FillFormatType.SOLID);
tr.getFill().getSolidColor().setColor(new Color(128,0,128));
tr.setFontHeight(20);
tr.setLatinFont(new TextFont("Arial"));

//Установите цвет текста и шрифт для текста нижнего индекса
tr = para.getTextRanges().get(1);
tr.getFill().setFillType(FillFormatType.SOLID); tr.getFill().getSolidColor().setColor(Color.BLUE); tr.setLatinFont(new TextFont("Arial")); //Добавьте абзац к текстовому фрейму фигуры
textFrame.getParagraphs().append(para);

//Сохраните результирующий документ
presentation.saveToFile("AddSuperscriptAndSubscript.pptx", FileFormat.PPTX_2013); } }
Image for post
3 просмотра
Добавить
Еще
Jane z
Подписаться