因此,我正在尝试编写一些程序以使用Python将html转换为pptx。 我正在使用一些代码来解析文件,然后在运行级别设置文本格式。
我在空白幻灯片上使用2个文本框架来工作,第一个文本框架用于标题,第二个文本框架用于呈现html的正文。
但是无论我做什么(Paragraph.font.name或run.font.name),我总是在第二个文本框中使用Arial字体。
我试图通过遍历tf.paragraphs以及遍历所有运行(paragraph.runs)来更新字体名称,但似乎没有任何效果。
这是我用来设置字体的功能
def setFont(font,tags,fontStyle,size):
font.language_id = MSO_LANGUAGE_ID.HEBREW
font.size = Pt(size)
font.name = fontStyle
for tag in tags:
if tag == 'b':
font.bold = True
elif tag == 'i':
font.italic = True
elif tag == 'u':
font.underline = True
return font
这是我的主要调用函数(我删除了一些与python-pptx不直接相关的其他调用)
def makeSlide(prs,title,body,fontStyle,titleSize,bodySize):
#Add title Slide
blank_slide_layout = prs.sli