如何更改 python pptx 中文本框中文本的字体大小

How to change the font size of the text in textbox in python pptx

我想更改文本框中测试的字体大小 我试过......

import os

from pptx import Presentation
from pptx.util import Inches, Pt
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
slide = prs.slides.add_slide(blank_slide_layout)
shapes = slide.shapes
left = top = width = height = Inches(1)
txBox = slide.shapes.add_textbox(left, top, width, height)
tf = txBox.text_frame
tf.text = "Hello World"


prs.save('test.pptx')
os.startfile('test.pptx')

它正在创建带有 Hello world 文本的 ppt,但我无法更改字体大小。 我尝试的第二种方法是..

import os

from pptx import Presentation
from pptx.util import Inches, Pt
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
slide = prs.slides.add_slide(blank_slide_layout)
shapes = slide.shapes
left = top = width = height = Inches(1)
txBox = slide.shapes.add_textbox(left, top, width, height)
tf = txBox.text_frame


p = tf.add_paragraph()
p.text = "Hello World"

p.font.size = Pt(40)
prs.save('test.pptx')
os.startfile('test.pptx')

但是这个额外的行是在文本框的开头创建的,我不需要那行。

那么有没有使用第一种方法更改字体大小或使用第二种方法没有额外行的解决方案?

试试这个。您可以在 pptx-python https://python-pptx.readthedocs.io/en/latest/user/text.html

中找到有关文本格式的更多信息
import os

from pptx import Presentation
from pptx.util import Inches, Pt
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
slide = prs.slides.add_slide(blank_slide_layout)
shapes = slide.shapes
left = top = width = height = Inches(1)
txBox = slide.shapes.add_textbox(left, top, width, height)
tf = txBox.text_frame

p = tf.paragraphs[0]
run = p.add_run()
run.text = "Hello World"

font = run.font
font.name = 'Calibri'
font.size = Pt(64)

prs.save('test.pptx')
os.startfile('test.pptx')