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

相关推荐
Java面试题总结12 小时前
Python 开发技巧 · 高级装饰器 —— 从基础到工业级实战
开发语言·python
纸小铭12 小时前
[MAF预定义ChatClient中间件-01]LoggingChatClient——在调用LLM前后输出日志
python·中间件·flask
aiqianji12 小时前
有哪些支持长文的AI生成短篇小说软件?
人工智能·python
狗都不学爬虫_12 小时前
AI逆向 - 某定制瑞树6纯算(ck-header-params后缀)
爬虫·python·网络爬虫
三十岁老牛再出发12 小时前
07.08.&07.09.每日总结
c语言·python
齐 飞12 小时前
Python常用语法总结
python
齐 飞13 小时前
LangGraph快速入门-03节点与边
python·langchain
_Jimmy_13 小时前
Python 多线程使用和场景
python
liulilittle13 小时前
Exhaustive drift-fix simulation V2 — KCC on shared-bottleneck wired path.
开发语言·网络·python·tcp/ip·计算机网络·信息与通信·通信
梦想的初衷~13 小时前
【完整教程】基于Python的无人机多光谱-点云融合生态三维建模:从Metashape重建到碳储量/生物量/LULC预测
python·无人机·三维重建·多光谱·无人机遥感·碳储量·生态建模