在 Python 中管理上標與下標
Contents
[
Hide
]
概觀
Aspose.Slides 提供將上標與下標文字整合至 PowerPoint(PPT、PPTX)和 OpenDocument(ODP)簡報的功能。無論您需要突顯化學式、數學方程式,或以腳註註釋內容,這些專門的格式選項都有助於保持清晰與精確。本文將教您如何在每張投影片中無縫套用上標與下標樣式,以確保專業效果。
加入上標與下標文字
您可以將上標與下標文字加入任何段落部分。於 Aspose.Slides 中,使用 PortionFormat 類別的 escapement 屬性來控制。
escapement 是一個百分比,範圍從 -100% 到 100%:
- > 0 → 上標(例如,25% = 輕微上升;100% = 完全上標)
- 0 → 基線(無上/下標)
- < 0 → 下標(例如,-25% = 輕微下降;-100% = 完全下標)
步驟:
- 建立一個 Presentation 並取得投影片。
- 加入一個矩形 AutoShape 並存取其 TextFrame。
- 清除現有段落。
- 針對上標:建立段落與文字部份,將
portion.portion_format.escapement設為 0 至 100 之間的值,設定文字,並加入該部份。 - 針對下標:建立另一個段落與文字部份,將
escapement設為 -100 至 0 之間的值,設定文字,並加入該部份。 - 將簡報儲存為 PPTX。
import aspose.slides as slides
with slides.Presentation("pres.pptx") as presentation:
# 取得投影片。
slide = presentation.slides[0]
# 建立文字方塊。
shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 100, 100, 200, 100)
shape.text_frame.paragraphs.clear()
# 建立上標文字的段落。
superscript_paragraph = slides.Paragraph()
# 建立包含一般文字的文字部份。
portion1 = slides.Portion()
portion1.text = "SlideTitle"
superscript_paragraph.portions.add(portion1)
# 建立包含上標文字的文字部份。
superscript_portion = slides.Portion()
superscript_portion.portion_format.escapement = 30
superscript_portion.text = "TM"
superscript_paragraph.portions.add(superscript_portion)
# 建立下標文字的段落。
subscript_paragraph = slides.Paragraph()
# 建立包含一般文字的文字部份。
portion2 = slides.Portion()
portion2.text = "a"
subscript_paragraph.portions.add(portion2)
# 建立包含下標文字的文字部份。
subscript_portion = slides.Portion()
subscript_portion.portion_format.escapement = -25
subscript_portion.text = "i"
subscript_paragraph.portions.add(subscript_portion)
# 將段落加入文字方塊。
shape.text_frame.paragraphs.add(superscript_paragraph)
shape.text_frame.paragraphs.add(subscript_paragraph)
presentation.save("TestOut.pptx", slides.export.SaveFormat.PPTX)
常見問題
我可以在表格和其他容器中套用上標/下標,而不僅限於普通文字方塊嗎?
是的。您可以在任何公開 TextFrame 的物件(包括表格儲存格)內將文字格式化為上標或下標。此格式會套用於該框架內的文字部份。
在匯出為 PDF、HTML 或影像時,上標/下標會被保留嗎?
是的。Aspose.Slides 在匯出至常見格式如 PDF、HTML 與 raster images 時會保留上標/下標格式,因為渲染管線會尊重文字部份層級的格式設定。
我可以在同一文字片段中同時使用上標/下標與超連結嗎?
是的。Hyperlinks 於文字部份(片段)層級指定,因此一個部份可以同時擁有超連結且被格式化為上標或下標。