如何使用 Python PPTX 将 superscript/subscript 文本添加到 Powerpoint?
How do I add superscript/subscript text to Powerpoint using Python PPTX?
我想使用 python pptx 将上标和下标文本添加到 powerpoint 幻灯片。当我尝试更改 superscript/subscript 属性时,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')
我已经能够从 https://lingojam.com/TinyTextGenerator 等上标生成器复制文本格式的上标或形状,然后将其复制到我的字符串中。我在表的列名中使用了它。在重命名列以及输出到 powerpoint 幻灯片时,它在代码字符串中显示为上标。
我想使用 python pptx 将上标和下标文本添加到 powerpoint 幻灯片。当我尝试更改 superscript/subscript 属性时,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')
我已经能够从 https://lingojam.com/TinyTextGenerator 等上标生成器复制文本格式的上标或形状,然后将其复制到我的字符串中。我在表的列名中使用了它。在重命名列以及输出到 powerpoint 幻灯片时,它在代码字符串中显示为上标。