python-docx修改已存在的Word文档的表格的字体格式方法
作者:a15986714591 发布时间:2021-07-20 05:03:07
搞了好几天的表格字体格式,一直想找一种能直接一次性修改表格所有字体格式的方法(函数),但是无论用什么方法都无法修改表格字体的格式,原因应该是已存在的文档本身就具有某种格式限制,制约着里面表格里面字体格式的更改,直接用类似: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')
来源:https://blog.csdn.net/a15986714591/article/details/78212187
猜你喜欢
- 问题环境依赖OS: CentOS 7.2 Python 3.5问题提出在运行一个Python程序之时,在调用sqlite之时,碰到如下的错误
- 1、添加一个任务task2 = visit_url('http://another.com', 3)asynicio.run
- 本文实例讲述了Python3搜索及替换文件中文本的方法。分享给大家供大家参考。具体实现方法如下:# 将文件中的某个字符串改变成另一个 # 下
- 加载垃圾邮件数据集spambase.csv(数据集基本信息:样本数: 4601,特征数量: 57, 类别:1 为垃圾邮件,0 为
- 对于使用虚拟主机的站长朋友,我们可能不知道该服务器是否安装了某种我们需要的组件。这时我们可以使用下面的代码来判断。该函数功能:检查是否存在系
- 阅读前:Pro Javascript Techniques翻译连载说明和目录JavaScript的演化是渐进而稳固的。历经过去十年的进程,J
- 源起我本想删写一小段代码用于删除一串字符串中的连续重复的指定字符,可能也是长时间不写代码,而且有的时候写代码只途快,很多基础知识都忘光了。我
- OL定义有序列表的时候,除非指定list-style-position:inside;,否则文字和前导符是有缩进的。但有的时候,OL定义的列
- 可扩展标记语言 (XML) 是用于描述数据集内容以及应如何将数据输出到设备上或如何在 Web 页上显示数据的语言。标记语言的创建来源于出版商
- 在python3爬虫中如何我们想要导入/导出Redis数据,就要安装使用RedisDump。RedisDump是一个用于Redis数据导入/
- 如何做一个检索结果带链接的检索?具体代码和说明如下:<% data=request.form("search_da
- 一、设置开启SMTP服务并获取授权码0.如果使用第三方邮件服务器SMTP服务来发送邮件,首先要在邮箱设置里面开启POP3/SMTP/IMAP
- 在不同平面上绘制二维条形图。本实例制作了一个3d图,其中有二维条形图投射到平面y=0,y=1,等。演示结果:完整代码:from mpl_to
- 导言:接上期,我们在极坐标下用python画了圆,心形线,玫瑰线,阿基米德螺线和双纽线5大常规曲线外,后来发现还漏了好一些漂亮且有意思的的曲
- 我差不多是与做web design的同时接触的flash design,因为那会普遍认为flash神通广大、无所不能。这些年我看Adobe的
- 查看依赖包及对应的版本号信息的方法有两种:方法1:pip list 方法2:pip freeze这两个同时适用于Windows和Linux系
- 本文实例为大家分享了JS实现用户管理系统的具体代码,供大家参考,具体内容如下效果图:html代码: <h1>
- 一、安装MySQL 目前web服务器已经很少有跑静态页面
- Python中可以使用for循环实现累加求和for循环语法:for 变量 in range(x):循环需要执行的代码如下实现1到n求和:de
- 这篇文章主要介绍了python3 tcp的粘包现象和解决办法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值