python docx 设置字体_python docx 中文字体设置的操作方法
這篇文章主要介紹了關(guān)于python docx 中文字體設(shè)置的操作方法,有著一定的參考價(jià)值,現(xiàn)在分享給大家,有需要的朋友可以參考一下
最近用到了docx生成word文檔,docx本身用起來(lái)很方便,自帶的各種樣式都很好看,美中不足的就是對(duì)中文的支持不夠好。在未設(shè)置中文字體的時(shí)候,生成的文檔雖然可以顯示中文,但是筆畫大小不一,很難看。
解決辦法:
首先創(chuàng)建一個(gè)文檔,要先聲明一個(gè)document:
from docx import Document
document = Document()
docx內(nèi)置的樣式都可以通過(guò)document.styles取到。
正文是Normal, 標(biāo)題樣式根據(jù)標(biāo)題聲明的基本,分別從Heading 1 到Heading 9, 另外還有table、list等各種word對(duì)應(yīng)的樣式。可以通過(guò)遍歷document.styles查看。
我們以正文Normal為例。先來(lái)看看涉及字體更改的是style object里面的哪些屬性。
1. document.styles[‘Normal'].font.name
有興趣深入研究的同學(xué)可以看看官方文檔對(duì)Font的介紹
http://python-docx.readthedocs.io/en/latest/dev/analysis/features/text/font.html?highlight=font
在這里我們只需要更改font.name。
2. document.styles[‘Normal']._element.rPr.rFonts
只更改font.name是不夠的,還需要調(diào)用._element.rPr.rFonts的set()方法。
綜合起來(lái)這樣
from docx.oxml.ns import qn
document.styles['Normal'].font.name = u'宋體'
document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋體')
問(wèn)題解決, 表格中字體成功更改為”宋體”.
相關(guān)推薦:
總結(jié)
以上是生活随笔為你收集整理的python docx 设置字体_python docx 中文字体设置的操作方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 筑梦公馆手游的好友助战怎么使用
- 下一篇: python 验证码识别训练_Pytho