怎么在Python中自动生成Word文档

怎么在Python中自动生成Word文档?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

用第三方库

怎么在Python中自动生成Word文档

使用以下命令安装:

pip install python-docx

使用该库的基本步骤为:

1.建立一个文档对象(可自动使用默认模板建立,也可以使用已有文件)。

2.设置文档的格式(默认字体、页面边距等)。

3.在文档对象中加入段落文本、表格、图像等,并指定其样式。

4.保存文档。

注:本库仅支持生成Word2007以后版本的文档类型,即扩展名为.docx 的。

下面分步介绍其基本使用方法:

步骤一:

fromdocximportDocument

doc=Document()#以默认模板建立文档对象

doc=Document('a.docx')#读取a.docx文档,建立文档对象

步骤二:

fromdocx.sharedimportInches,Pt

defchg_font(obj,fontname='微软雅黑',size=None):

##设置字体函数

obj.font.name=fontname

obj._element.rPr.rFonts.set(qn('w:eastAsia'),fontname)

ifsizeandisinstance(size,Pt):

obj.font.size=size


distance=Inches(0.3)

sec=doc.sections[0]#sections对应文档中的“节”

sec.left_margin=distance#以下依次设置左、右、上、下页面边距

sec.right_margin=distance

sec.top_margin=distance

sec.bottom_margin=distance

sec.page_width=Inches(12)#设置页面宽度

sec.page_height=Inches(20)#设置页面高度

##设置默认字体

chg_font(doc.styles['Normal'],fontname='宋体')

步骤三:

1.添加段落文本

paragraph=doc.add_paragraph('text....')

ph_format=paragraph.paragraph_format

ph_format.space_before=Pt(10)#设置段前间距

ph_format.space_after=Pt(12)#设置段后间距

ph_format.line_spacing=Pt(19)#设置行间距

如果希望同一段落中的文本格式不同,就需要使用Run对象(可以理解为可以单独设置格式的段落内对象)。

如:

run=paragraph.add_run('text...')

run.bold=True#设置字体为粗体

chg_font(run,fontname='微软雅黑',size=Pt(12))#设置字体和字号

2.添加表格,并写入相关内容

tab=doc.add_table(rows=4,cols=4)#添加一个4行4列的空表

cell=tab.cell(1,3)#获取某单元格对象(从0开始索引)

在单元格中添加文本:

cell.text='abc'

在单元格中添加多行文本(指定转行)

ph=cell.paragraphs[0]

run=ph.add_run(‘text....')'
run.add_break()#添加一个折行
run.add_picture('a.png')#插入图像,可以是内存中的图像,width=Inches(1.0)指定宽度。

3.在文档中添加图像:

doc.add_picture('a.png')

步骤四:

doc.save('a.docx') # 保存图像

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注恰卡编程网行业资讯频道,感谢您对恰卡编程网的支持。

发布于 2021-03-21 22:40:35
收藏
分享
海报
0 条评论
160
上一篇:如何在Vue中使用数字输入框组件 下一篇:如何在C++中使用volatile关键字
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码