寫一個用python批量生成docx的程序,出現問題
我的代碼
p2 = document.add_paragraph() run2 = p2.add_run(i+': ') run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'微軟雅黑') run2.font.size = Pt(16) run2.font.name = "微軟雅黑" run2.font.bold = True
報錯
run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'微軟雅黑') AttributeError: 'NoneType' object has no attribute 'rFonts'
解決方法
p2 = document.add_paragraph() run2 = p2.add_run(i+': ') run2.font.name = "微軟雅黑" run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'微軟雅黑') run2.font.size = Pt(16) # run2.font.name = "微軟雅黑" run2.font.bold = True
通過資料發現,run2.font.name = "微軟雅黑" 必須放在run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'微軟雅黑')的前面,
即需要先設置字體名字這個屬性,再進行中文字體設置,完美運行