如何在python docx中为段落应用自定义(专有)字体?

问题描述 投票:1回答:1

我在阅读python docx文档时有点迷茫。

我读到的文件里面有一个专有字体。

document_original = docx.Document('doc_orig.docx')
styles = document_original.styles
propitiatory_default = styles['Default']

我检查了一下风格是否真的有我需要的字体。

print(proprietary_default.font.name)

我创建了一个新的文档,里面有我需要的样式和字体的文本。

doc = docx.Document()
para = doc.add_paragraph()
para.style = proprietary_default
para_run = para.add_run('this is a text')
file_new = 'font_test_2'
doc.save(  file_new+ '.docx')

但是如果我打开文件,我没有看到专有的默认样式。

document_new = docx.Document(file_new+'.docx')
styles = document_new.styles
for s in styles:
    print(s.name)

你知道怎样才能解决这个问题吗?

python-docx
1个回答
0
投票

字体不应该应用在样式上,而应该应用在段落的字体名称上。

doc = docx.Document()
para = doc.add_paragraph()
para_run = para.add_run('this is a text')
para_run.font.name=proprietary_default.font.name
© www.soinside.com 2019 - 2024. All rights reserved.