python如何写数据到docx示例

docx是经常用到的文档格式,经常需要python批量生成docx文档。

这里示例如何用python写文本到docx,并以仿宋_GB2312为例示例如何设置格式。

所用代码示例参考和修改自网络资料。

1 添加段落示例

这里示例如何写段落到docx文件。

复制代码
from docx import Document
from docx.shared import Pt
from docx.shared import RGBColor

# 打开或创建一个Word文档
doc = Document()

# 添加一个新的段落
paragraph = doc.add_paragraph('这是一个有特定格式的段落。')
# 设置字体、大小和颜色
run = paragraph.add_run('这是加粗和蓝色的文本。')
run.bold = True
run.font.size = Pt(12)
run.font.color.rgb = RGBColor(0, 0, 255)

# 保存文档
doc.save('formatted_text.docx')

2 设置字体示例

docx经常需要设置中文字体、大小、颜色等,这里以仿宋_GB2312为例,示例设置过程。

2.1 默认设置

以下是全文统一设置字体、大小的示例,这里设置段落字体为三号仿宋-GB2312。

复制代码
from docx import Document
from docx.oxml.ns import qn
from docx.shared import Pt, RGBColor

document = Document()
document.add_paragraph('您好,我是aaaaa')
# 设置文档默认字体
document.styles['Normal'].font.name = '仿宋_GB2312'
document.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), '仿宋_GB2312')
# 保存word文档
document.save('bbb.docx')

2.2 段落设置

添加段落后设置字体、字号、加粗、对齐,这里设置段落字体为三号仿宋-GB2312。

复制代码
from docx import Document
from docx.shared import Pt

# 创建文档
doc = Document()

# 添加段落并设置字体
paragraph = doc.add_paragraph("这是三号仿宋-GB2312字体")

# 设置段落字体
run = paragraph.runs[0]
run.font.name = '仿宋_GB2312'  # 字体名称
run._element.rPr.rFonts.set(qn('w:eastAsia'), '仿宋_GB2312')  # 处理中文字体
run.font.size = Pt(16)  # 三号对应16磅

# 保存文档
doc.save("示例文档.docx")

3 完整设置示例

以下是完整版本的docx格式设置示例。

复制代码
from docx import Document
from docx.shared import Pt, Inches
from docx.oxml.ns import qn
from docx.enum.text import WD_ALIGN_PARAGRAPH

doc = Document()

# 设置文档默认字体
doc.styles['Normal'].font.name = '仿宋_GB2312'
doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), '仿宋_GB2312')

# 添加标题
title = doc.add_heading("文档标题", 0)
title.alignment = WD_ALIGN_PARAGRAPH.CENTER

# 添加正文
paragraph = doc.add_paragraph()
run = paragraph.add_run("这是一段使用三号仿宋-GB2312字体的文本。")
run.font.name = '仿宋_GB2312'
run._element.rPr.rFonts.set(qn('w:eastAsia'), '仿宋_GB2312')
run.font.size = Pt(16)

doc.save("完整示例.docx")

reference


Python高效操作Word:实用技巧与进阶方法

https://zhuanlan.zhihu.com/p/683904654

docx设置保存的word文档字体及大小

https://developer.aliyun.com/article/1403052

相关推荐
励志不掉头发的内向程序员6 小时前
【从零写一个CAD 03】三个 double 值得单独一个类吗:把视图变换抽成 View
开发语言·c++·qt·学习·系统架构
PHP实战开发录6 小时前
PHP接口大整数为什么变了
开发语言·php
Yolanda_20226 小时前
15.dataloader的使用
python
临床数据科学和人工智能兴趣组9 小时前
在R语言中, 使用 as.factor() 函数转换数值型变量
开发语言·r语言
杨杨杨大侠12 小时前
Jev、Kev、Laya:决策模型怎么选,什么时候需要微调?
人工智能·python·agent
andyweike12 小时前
php笔记
开发语言·笔记·php
LOVE️YOU13 小时前
Python 在定义函数时,究竟定义的是什么?
python
段一凡-华北理工大学13 小时前
大模型应用开发 100 天:Python + LLM 从入门到精通 day26~Prompt 调试与优化——A/B 测试与效果评估
windows·python·大模型·prompt·智能体·提示词工程·高炉智能化
Minecraft红客13 小时前
以撒的结合
python·游戏·电脑·娱乐
Circ.13 小时前
Python 调试 Litellm 本地大模型接口:模型列表与对话接口实操踩坑记录
开发语言·python