赞
踩
首先安装docx库
pip install python-docx
代码:
#导入相关库 from docx import Document #页边距的设置 from docx.shared import Cm #设置居中效果 from docx.enum.text import WD_ALIGN_PARAGRAPH #字体的设置 from docx.oxml.ns import qn #字号的设置 from docx.shared import Pt,RGBColor,Inches #时间的显示 import time from datetime import datetime import pytz #实例化一个Word Doc = Document() #设置页面边距(上3.8,下3.5,左2.7,右2.6) Doc.sections[0].top_margin = Cm(3.7) Doc.sections[0].bottom_margin = Cm(3.5) Doc.sections[0].left_margin = Cm(2.7) Doc.sections[0].right_margin = Cm(2.6) #标题的设置 #设置标题,居中对齐,方正小标宋简体。 p1=Doc.add_paragraph() run1=p1.add_run("工作总结") #标题字号的设置,22Pt为二号字体,16位三号字体 run1.font.size=Pt(22) #设置字体 Doc.styles['Normal'].font.name="方正小标宋简体" Doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'),"方正小标宋简体") #设置居中 p1.paragraph_format.alignment=WD_ALIGN_PARAGRAPH.CENTER #设置标题行间距 p1_format=p1.paragraph_format p1_format.line_spacing=Pt(35) # #标题与正文之间加一个空行 # P_huanhang=Doc.add_paragraph(text='\r', style=None) # 换行 # p_huanhang_format=P_huanhang.paragraph_format # p_huanhang_format.line_spacing=Pt(21) #设置每一段的格式 p2 = Doc.add_paragraph() run3=p2.add_run("这是这一段话的第一句,") run4=p2.add_run("这是这一段的第二句话。") #设置字体 Doc.styles['Normal'].font.name="仿宋_GB2312" Doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'),"仿宋_GB2312") #设置字号 p2.style.font.size = Pt(16) #设置行距28 p2_format=p2.paragraph_format p2_format.line_spacing=Pt(28) #设置首行缩进2个字符 p2_format.first_line_indent=p2.style.font.size * 2 #落款,空两行,时间右对齐,名字右对齐同时向右缩进3个字符 #第一个空行,行距28 P_huanhang2=Doc.add_paragraph(text='\r', style=None) # 换行 p_huanhang2_format=P_huanhang2.paragraph_format p_huanhang2_format.line_spacing=Pt(28) # #第二个空行,行距28 # P_huanhang3=Doc.add_paragraph(text='\r', style=None) # 换行 # p_huanhang3_format=P_huanhang3.paragraph_format # p_huanhang3_format.line_spacing=Pt(28) #落款 p_luoluan=Doc.add_paragraph() run_luokuan=p_luoluan.add_run("落款") #标题字号的设置,22Pt为二号字体,16位三号字体 run_luokuan.font.size=Pt(16) #设置字体 Doc.styles['Normal'].font.name="仿宋_GB2312" Doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'),"仿宋_GB2312") #设置居中 p_luoluan.paragraph_format.alignment=WD_ALIGN_PARAGRAPH.RIGHT #设置落款行间距 p_luoluan_format=p_luoluan.paragraph_format p_luoluan_format.line_spacing=Pt(28) #设置向右缩进三个字符 p_luoluan_format.right_indent=p_luoluan.style.font.size * 3 p_luoluan_format.space_after = Pt(0) p_luoluan_format.left_indent = Pt(0) p_luoluan_format.space_before = Pt(0) # p_luoluan_format.right_indent = Pt(0) #时间 tz = pytz.timezone('Asia/Shanghai') #东八区 t = datetime.fromtimestamp(int(time.time()), pytz.timezone('Asia/Shanghai')).strftime('%Y年%m月%d日') #添加一个新的段落,之后将时间写入到新的段落中,设置右对齐,字符间距28,字体仿宋,三号字体 #时间为当前时间 p_time=Doc.add_paragraph() run_time=p_time.add_run(t) #标题字号的设置,22Pt为二号字体,16位三号字体 run_luokuan.font.size=Pt(16) #设置字体 Doc.styles['Normal'].font.name="仿宋_GB2312" Doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'),"仿宋_GB2312") #设置向右对齐 p_time.paragraph_format.alignment=WD_ALIGN_PARAGRAPH.RIGHT #设置落款行间距 p_time_format=p_time.paragraph_format p_time_format.line_spacing=Pt(28) p_time_format.space_after = Pt(0) p_time_format.left_indent = Pt(0) p_time_format.space_before = Pt(0) p_time_format.right_indent = Pt(0) #保存此文档 Doc.save("正式文档_1.docx")
运行此程序可在当前目录下生成名字为正式文档_1.docx的word文档
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。