python docx設置標題中文字體run2.element.rPr.rFonts.set(qn('w:eastAsia'), u'微軟雅黑')報錯AttributeError: 'NoneType' object has no attribute 'rFonts'


寫一個用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'微軟雅黑')的前面,
即需要先設置字體名字這個屬性,再進行中文字體設置,完美運行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM