python-docx修改已存在的Word文档的表格的字体格式方法


Posted in Python onMay 08, 2018

搞了好几天的表格字体格式,一直想找一种能直接一次性修改表格所有字体格式的方法(函数),但是无论用什么方法都无法修改表格字体的格式,原因应该是已存在的文档本身就具有某种格式限制,制约着里面表格里面字体格式的更改,直接用类似:table.style.font.name='Arial',table.style.font.size = 120000….之类的函数是不能更改表格的字体格式的(PS:可能该功能在开发中,也可能我没找到对应直接修改整个表格里面字体的方法)

但是后来发现表格里面用run = add.paragraph().add_run(‘hello world'), run.font.name='Arial', run.font.size = 120000,是可以修改表格里面字体格式的,原因应该是paragraph和table是同级的,paragraph.run可以不受table的格式影响

这办法麻烦之处就是表格内容需要先以run = add.paragraph().add_run(‘hello world')存入表格,然后才能通过‘run'来改变字体,这点比较有限制性,不过目前也只想到这种办法,后面有朋友有新的好的办法欢迎指点

补充一点,如果是新建一个文档,然后在新建文档的同时(存储该文档在某个位置之前)也新建表格就可以直接用类似:table.style.font.name='Arial',table.style.font.size = 120000….这种方法直接更改(或者称为 定义 更准确)表格的字体格式,就不用用上面说的那种麻烦方法,原因应该是重新定义文档时,文档的许多元素的属性可定义性较多较宽松许多

代码块

from docx import Document
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
document = Document('C:\\format.docx')
tables = document.tables[0]
run = tables.cell(1,0).paragraphs[0].add_run('smida')
run.font.name = '宋体'
run.font.size = 140000
tables.cell(1,0).paragraphs[0].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
document.save('C:\\format.docx')

以上这篇python-docx修改已存在的Word文档的表格的字体格式方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中给List添加元素的4种方法分享
Nov 28 Python
python使用BeautifulSoup分析网页信息的方法
Apr 04 Python
Python中支持向量机SVM的使用方法详解
Dec 26 Python
python方向键控制上下左右代码
Jan 20 Python
解决Python获取字典dict中不存在的值时出错问题
Oct 17 Python
Django中自定义admin Xadmin的实现代码
Aug 09 Python
使用OpenCV实现仿射变换—缩放功能
Aug 29 Python
python打印文件的前几行或最后几行教程
Feb 13 Python
Django框架获取form表单数据方式总结
Apr 22 Python
使用python实现名片管理系统
Jun 18 Python
python爬虫使用requests发送post请求示例详解
Aug 05 Python
Python Django / Flask如何使用Elasticsearch
Apr 19 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
儿童编程python入门
May 08 #Python
解决python大批量读写.doc文件的问题
May 08 #Python
You might like
PHP Directory 函数的详解
2013/03/07 PHP
PHP实现懒加载的方法
2015/03/07 PHP
php使用for语句输出三角形的方法
2015/06/09 PHP
PHP数组的定义、初始化和数组元素的显示实现代码
2016/11/05 PHP
如何通过View::first使用Laravel Blade的动态模板详解
2017/09/21 PHP
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
2007/05/08 Javascript
JScript 脚本实现文件下载 一般用于下载木马
2009/10/29 Javascript
jquery tab插件精简版分享
2011/09/10 Javascript
jQuery提交多个表单的小技巧
2014/07/27 Javascript
png在IE6 下无法透明的解决方法汇总
2015/05/21 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
详解vue-validator(vue验证器)
2017/01/16 Javascript
vue-router 组件复用问题详解
2018/01/22 Javascript
vue 使用自定义指令实现表单校验的方法
2018/08/28 Javascript
Vue 理解之白话 getter/setter详解
2019/04/16 Javascript
8个有意思的JavaScript面试题
2019/07/30 Javascript
深入浅出vue图片路径的实现
2019/09/04 Javascript
微信小程序自定义tabbar custom-tab-bar 6s出不来解决方案(cover-view不兼容)
2019/11/01 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
js实现简单音乐播放器
2020/06/30 Javascript
在python中的socket模块使用代理实例
2014/05/29 Python
Python的Flask框架应用调用Redis队列数据的方法
2016/06/06 Python
Python实现好友全头像的拼接实例(推荐)
2017/06/24 Python
Flask之flask-session的具体使用
2018/07/26 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
python 利用matplotlib在3D空间中绘制平面的案例
2021/02/06 Python
CSS3实现点击放大的动画实例代码
2017/02/27 HTML / CSS
Supersmart英国:欧洲市场首批食品补充剂供应商之一
2018/05/05 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
三维科技面试题
2013/07/27 面试题
合作经营协议书范本
2014/09/16 职场文书
终止解除劳动合同证明书
2015/06/17 职场文书
护士业务学习心得体会
2016/01/25 职场文书
2019年妇科护士的自我鉴定(3篇)
2019/09/26 职场文书
linux下导入、导出mysql数据库命令的实现方法
2021/05/26 MySQL
java中为什么说子类的构造方法默认访问的是父类的无参构造方法
2022/04/13 Java/Android