python docx 中文字体设置的操作方法


Posted in Python onMay 08, 2018

最近用到了docx生成word文档,docx本身用起来很方便,自带的各种样式都很好看,美中不足的就是对中文的支持不够好。在未设置中文字体的时候,生成的文档虽然可以显示中文,但是笔画大小不一,很难看。

解决办法:

首先创建一个文档,要先声明一个document:

from docx import Document
document = Document()

docx内置的样式都可以通过document.styles取到。

正文是Normal, 标题样式根据标题声明的基本,分别从Heading 1 到Heading 9, 另外还有table、list等各种word对应的样式。可以通过遍历document.styles查看。

我们以正文Normal为例。先来看看涉及字体更改的是style object里面的哪些属性。

1. document.styles[‘Normal'].font.name

有兴趣深入研究的同学可以看看官方文档对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是不够的,还需要调用._element.rPr.rFonts的set()方法。

综合起来这样

from docx.oxml.ns import qn
document.styles['Normal'].font.name = u'宋体'
document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')

问题解决, 表格中字体成功更改为”宋体”.

以上这篇python docx 中文字体设置的操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之玩转字符串(2)
Sep 14 Python
使用rst2pdf实现将sphinx生成PDF
Jun 07 Python
Python实现自动登录百度空间的方法
Jun 10 Python
Python构建网页爬虫原理分析
Dec 19 Python
pytorch对可变长度序列的处理方法详解
Dec 08 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
Jul 22 Python
Python openpyxl读取单元格字体颜色过程解析
Sep 03 Python
python DataFrame转dict字典过程详解
Dec 26 Python
Django中的session用法详解
Mar 09 Python
Python PyQt5模块实现窗口GUI界面代码实例
May 12 Python
python interpolate插值实例
Jul 06 Python
Pycharm Git 设置方法
Sep 15 Python
Python解析并读取PDF文件内容的方法
May 08 #Python
python-docx修改已存在的Word文档的表格的字体格式方法
May 08 #Python
对Python中gensim库word2vec的使用详解
May 08 #Python
用python处理MS Word的实例讲解
May 08 #Python
基于python批量处理dat文件及科学计算方法详解
May 08 #Python
使用Python通过win32 COM实现Word文档的写入与保存方法
May 08 #Python
Ubuntu下使用python读取doc和docx文档的内容方法
May 08 #Python
You might like
PHPExcel读取Excel文件的实现代码
2011/12/06 PHP
PHP中异常处理的一些方法整理
2015/07/03 PHP
php链表用法实例分析
2015/07/09 PHP
PHP设计模式之原型模式定义与用法详解
2018/04/03 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
php实现统计IP数及在线人数的示例代码
2020/07/22 PHP
js 深拷贝函数
2008/12/04 Javascript
使用jQuery清空file文件域的解决方案
2013/04/12 Javascript
jquery获取css中的选择器(实例讲解)
2013/12/02 Javascript
js实现汉字排序的方法
2015/07/23 Javascript
javascript实现手机震动API代码
2015/08/05 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
AngularJS实现根据不同条件显示不同控件
2017/04/20 Javascript
全面解析Node.js 8 重要功能和修复
2017/06/02 Javascript
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
ES6中字符串的使用方法扩展
2019/06/04 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
vue-cli脚手架的.babelrc文件用法说明
2020/09/11 Javascript
深入浅析Python 中的sklearn模型选择
2019/10/12 Python
PYTHON实现SIGN签名的过程解析
2019/10/28 Python
python使用openCV遍历文件夹里所有视频文件并保存成图片
2020/01/14 Python
浅析matlab中imadjust函数
2020/02/27 Python
Python学习之路安装pycharm的教程详解
2020/06/17 Python
简述python&pytorch 随机种子的实现
2020/10/07 Python
CSS3动画效果回调处理详解
2014/12/10 HTML / CSS
洲际酒店集团英国官网:IHG英国
2019/07/10 全球购物
优质服务口号
2014/06/11 职场文书
家具商场的活动方案
2014/08/16 职场文书
企业总经理助理岗位职责
2014/09/12 职场文书
政风行风整改报告
2014/11/06 职场文书
2015年实习单位评语
2015/03/25 职场文书
2015年市场营销工作总结
2015/07/23 职场文书
《小蝌蚪找妈妈》教学反思
2016/02/23 职场文书
关于公司年会的开幕词
2016/03/04 职场文书
分享mysql的current_timestamp小坑及解决
2021/11/27 MySQL
Smart 2 车辆代号 HC11 全新谍照曝光
2022/04/21 数码科技