上标和下标
Contents
[
Hide
]
管理上标和下标文本
您可以在任何段落部分添加上标和下标文本。要在Aspose.Slides文本框中添加上标或下标文本,必须使用setEscapement方法来自PortionFormat类。
此属性返回或设置上标或下标文本(值从-100%(下标)到100%(上标))。例如:
- 创建Presentation类的实例。
- 通过使用其索引获取幻灯片的引用。
- 将Rectangle类型的IAutoShape添加到幻灯片。
- 访问与IAutoShape关联的ITextFrame。
- 清除现有段落。
- 创建一个新的段落对象以保持上标文本,并将其添加到IParagraphs collection的ITextFrame中。
- 创建一个新的部分对象。
- 设置该部分的Escapement属性为0到100之间的值以添加上标。(0表示没有上标)
- 为Portion设置一些文本,然后将其添加到段落的部分集合中。
- 创建一个新的段落对象以保持下标文本,并将其添加到IParagraphs集合的ITextFrame中。
- 创建一个新的部分对象。
- 设置部分的Escapement属性为0到-100之间的值以添加下标。(0表示没有下标)
- 为Portion设置一些文本,然后将其添加到段落的部分集合中。
- 将演示文稿保存为PPTX文件。
上述步骤的实现如下所示。
# 实例化一个表示PPTX的Presentation类
$pres = new Presentation();
try {
# 获取幻灯片
$slide = $pres->getSlides()->get_Item(0);
# 创建文本框
$shape = $slide->getShapes()->addAutoShape(ShapeType::Rectangle, 100, 100, 200, 100);
$textFrame = $shape->getTextFrame();
$textFrame->getParagraphs()->clear();
# 为上标文本创建段落
$superPar = new Paragraph();
# 创建带普通文本的部分
$portion1 = new Portion();
$portion1->setText("SlideTitle");
$superPar->getPortions()->add($portion1);
# 创建带上标文本的部分
$superPortion = new Portion();
$superPortion->getPortionFormat()->setEscapement(30);
$superPortion->setText("TM");
$superPar->getPortions()->add($superPortion);
# 为下标文本创建段落
$paragraph2 = new Paragraph();
# 创建带普通文本的部分
$portion2 = new Portion();
$portion2->setText("a");
$paragraph2->getPortions()->add($portion2);
# 创建带下标文本的部分
$subPortion = new Portion();
$subPortion->getPortionFormat()->setEscapement(-25);
$subPortion->setText("i");
$paragraph2->getPortions()->add($subPortion);
# 将段落添加到文本框
$textFrame->getParagraphs()->add($superPar);
$textFrame->getParagraphs()->add($paragraph2);
$pres->save("formatText.pptx", SaveFormat::Pptx);
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}