hand
_1_5_4
4
返回栏目
1k
9k
1k
1k
5k
1k
1k
1k
1k
3k
2k
1k
0.8k
2k
3k
1k
1k
0.7k
0.9k
1k
0.6k
0.4k
0.4k
0.3k
3k
2k
9k
0.4k
0.4k
0.8k
0.5k
3k
5k
1k
2k
2k
3k
5k
1k
1k
0.4k
0.5k
0.4k
0.6k
0.7k
1k
0.4k
0.3k
4k
0.5k
0k
0.3k
0k
0.2k
0.2k
0.3k
0.9k
0.9k
0.1k
0.9k
0.9k
1k
0.5k
6k
0.3k
0.4k
0.7k
0.6k
8k
3k
1k
1k
1k
1k
0k
2k
1k
1k
0.2k
5k
4k
5k
0.4k
0.8k
1k
1k
1k
0.1k
2k
1k
2k
6k
0k
2k
7k
1k
5k
2k
3k
1k
0k
1k
0.9k
0.4k
0.2k
1k
3k
4k
1k
1k
1k
2k
3k
0.7k
0.3k
0.5k
0.6k
1k
0.9k
3k
0.3k
4k
返回python栏目
作者:
贺及楼
成为作者
更新日期:2024-10-28 10:02:34
作用:Microsoft Word 的各种处理
Python 的 python-docx
库用于创建、修改和提取Microsoft Word文档(.docx格式)。它允许用户添加和编辑文本、设置字体和段落属性、插入图片、表格和页眉页脚。python-docx
支持读取和写入.docx文件,无需Microsoft Word,便于开发自动化文档处理、报告生成和文档内容分析等应用。这个库在自动化办公、文档管理和数据转换领域非常有用。
pip install python-docx
可以看见不仅仅安装了python-docx-1.1.2 还安装了lxml-5.3.0 typing-extensions-4.12.2
包名 | 包中文名 | 释义 | 连接 |
---|---|---|---|
lxml-5.3.0 | / | lxml是一个高性能的Python库,用于解析XML和HTML文档。它提供了快速、易于使用的接口,支持XPath和XSLT。 | / |
typing-extensions-4.12.2 | / | typing-extensions是Python的扩展模块,提供额外的类型提示工具,支持向后兼容。 | / |
import docx
doc = docx.Document()
doc.add_paragraph("This is a test file.")
doc.save("testfile.docx")
from docx import Document
from docx.shared import Inches#英寸
from docx.shared import Pt#大小
from docx.shared import RGBColor#颜色
from docx.oxml.ns import qn#中文
doc = Document()#实例化
# 全文设置
# Normal指的是正文部分,还有很多其他选项如标题、表格、列表等,可遍历doc.styles进行查看
# 设置正文颜色,大小,粗体
doc.styles['Normal'].font.color.rgb = RGBColor(0, 0, 255)
doc.styles['Normal'].font.size = Pt(12)
doc.styles['Normal'].font.bold = True
# 设置全文字体
doc.styles['Normal'].font.name = u'宋体'
# 对于中文字体必须加这一句
doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
# 添加标题,0,1,2...表示标题号大到小
doc.add_heading('title1', 0)
# 段落设置
# 添加段落p1
p1 = doc.add_paragraph(u'两名老者是武当宋远桥,张松溪,中年夫妇是殷梨亭、杨不悔夫妇')
# p1.paragraph_format段落格式,有多个项目可以设置,包括缩进,对齐,行距等
# 参考:https://python-docx.readthedocs.io/en/latest/api/text.html#docx.text.parfmt.ParagraphFormat
# 首行缩进0.5英寸
p1.paragraph_format.first_line_indent = Inches(0.5)
# 这个方法会修改所有段落,而不单单是p1段落,和doc.styles['Normal'].font.color.rgb作用一样,不用!
# p1.style.font.color.rgb = RGBColor(0, 255, 0)
# 插入一个分页符
doc.add_page_break()
# 再添加个段落p2
p2 = doc.add_paragraph('abcde')
# 往p2添加新的文字,并设置字体,可进行多种格式设置
run = p2.add_run(u'添加的文字')
run.font.size = Pt(24)
run.italic = True
# 继续添加文字,在添加文字时直接设置字体,此方法只能进行一种格式设置
p2.add_run(u'取消粗体').bold = False
p2.add_run(u'设置斜体').italic = True
p2.add_run(u'字体再大点').font.size = Pt(36)
# 插入一个分页符
doc.add_page_break()
# 添加一段落,设置为红色文字,9px,斜体,楷体,非粗体,缩进18px
# 用add_paragraph('XXXXX')先添加文字后,再修改已添加的文字格式比较困难
# 可以先用add_paragraph()添加个空段落,然后使用add_run()添加文字,通过run对象进行格式设置
p3 = doc.add_paragraph()
run = p3.add_run(u'添加一段落,设置为红色文字,9px,斜体,楷体,非粗体,缩进18px')
run.font.size = Pt(9)
run.font.color.rgb = RGBColor(255, 0, 0)
run.font.name = u'楷体'
run._element.rPr.rFonts.set(qn('w:eastAsia'), u'楷体')
run.italic = True
run.bold = False
p3.paragraph_format.first_line_indent = Pt(18)
# 保存文档
doc.save('python-docx.docx')
————————————————
版权声明:本文为CSDN博主「McJevons」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jewely/article/details/83387940
python
整章节共122节
快分享给你的小伙伴吧 ~