我正在使用python-docx生成* .docx。无法更改内置样式“标题1”的字体名称。字体仍然是“ Calibri”。其他事情,包括更改字体大小和颜色,都可以正常工作。
import os
from docx import Document
filename = "sample.docx"
doc = Document()
heading_1_style = doc.styles["Heading 1"]
heading_1_style.font.name = "Arial"
doc.add_heading("Heading 1")
doc.save(filename)
os.startfile(filename)
“标题1”的字体名称仍然是Calibri而不是Arial。
已更新:简化的示例代码。
答案 0 :(得分:0)
首先,使用更简单的脚本重现您看到的行为。这将大大降低问题的复杂性:
document = Document()
heading_1 = document.styles["Heading 1"]
font = heading_1.font
print("original font size is %s pt" % font.size.pt)
font.size = Pt(18)
print("changed font size is %s pt" % font.size.pt)
document.add_heading("A Level-1 Heading")
document.save("sample.docx")
如果这可行,则将问题范围缩小到代码的其他部分。如果不是这样,您将有一个更简单的问题需要解决,尤其是其他人可以轻松为您解决的问题。我建议您尝试一下,看看您发现了什么,然后如果仍然遇到问题,请问另一个问题。