python - 如何使用 Python PPTX 将上标/下标文本添加到 Powerpoint?

标签 python python-pptx

我想使用 python pptx 将上标和下标文本添加到 powerpoint 幻灯片中。当我尝试更改上标/下标属性时,powerpoint 上的文本没有发生视觉变化。我尝试过以下方法:

#Import modules
from pptx import Presentation
from pptx.enum.shapes import MSO_SHAPE
from pptx.util import Cm


#Open powerpoint file
prs = Presentation('filename.pptx')

#Add slide
slidelayout = prs.slide_layouts[0]
slide = prs.slides.add_slide(slidelayout)
shapes = slide.shapes

#Add a shape
shape = shapes.add_shape(MSO_SHAPE.ROUNDED_RECTANGLE, Cm(10), Cm(10), Cm(10), Cm(10))

#Add text
text_frame = shape.text_frame
paragraph = text_frame.add_paragraph()
run = paragraph.add_run()
run.text = 'this text should be superscript'
font = run.font
font.superscript = True
font.subscript = False

#Save the powerpoint file
prs.save('filename2.pptx')

最佳答案

这可能对您有帮助:

# Following functions are workarounds for python-pptx not having these functions for the font object
def set_subscript(font):
    font._element.set('baseline', '-25000')

def set_superscript(font):
    font._element.set('baseline', '30000')

def set_strikethrough(font):
    font._element.set('strike','sngStrike')

关于python - 如何使用 Python PPTX 将上标/下标文本添加到 Powerpoint?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61329224/

相关文章:

python - matplotlib 标题中的 latex 和文本

python - 从一个程序运行多个程序

python - 在现有占位符中插入文本并设置其格式

python-pptx 访问类别轴元素 "tickLblSkip"& "tickMarkSkip"

python - Python PPTX 中不同颜色的特定条形图

Python-pptx for Python 3.5.1

python - 删除文本文件中的非重复行

python - Windows 上的 virtualenv 激活

python - 有效地检查数字是否在第二个数字 +-10% 的范围内?

python - 使用 python-pptx 打印 Powerpoint 幻灯片