格式排版,繁琐的要求,如果只输入文字格式由机器帮我们弄好,那可就太简单了。于是乎利用python创建了这一功能,以此提高效率。
链接:https://pan.baidu.com/s/1GVSctLPGuyA0ObGwS_LlOw?pwd=zkwi 提取码:zkwi
1.下载到桌面
2.解压压缩包
3.进入文件夹双击exe文件
如果需要结束,段落级别填-1,内容为空(回车即可)。这样在文件夹下回生成一个word文档。
from docx.shared import RGBColor
from docx.shared import Pt
from docx.oxml.ns import qn #设置中文字体需要该模块
from docx.enum.table import WD_TABLE_ALIGNMENT
from docx.shared import Inches
from docx import Document
doc = Document()
p = doc.add_paragraph()
data = input('绝密材料:')
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
# 设置字体大小,三号
run.font.size = Pt(16)
# 设置文字类型
run.font.name = "楷体_GB2312"
# 设置像微软雅黑这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"),"楷体_GB2312")
#空一段
p = doc.add_paragraph()
#第三段
p = doc.add_paragraph()
data = input('输入:关于×××的报告')
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
#文字居中
p.alignment = WD_TABLE_ALIGNMENT.CENTER
# 设置字体大小,二号
run.font.size = Pt(22)
# 设置文字类型
run.font.name = "方正小标宋简体"
# 设置像微软雅黑这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"),"方正小标宋简体")
#空一段
p = doc.add_paragraph()
#第五段
p = doc.add_paragraph()
data = input('输入:相关单位')
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
#文字居中
p.alignment = WD_TABLE_ALIGNMENT.CENTER
# 设置字体大小,三号
run.font.size = Pt(16)
# 设置文字类型
run.font.name = "楷体_GB2312"
# 设置像楷体_GB2312这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"),"楷体_GB2312")
#空一段
p = doc.add_paragraph()
# 正文结构第一级
def zhengwen_num1(data):
p = doc.add_paragraph()
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
#每段首行缩进二个字符
paragraph_format = p.paragraph_format
paragraph_format.first_line_indent = Inches(0.5)
# 设置字体大小,三号
run.font.size = Pt(16)
# 设置文字类型
run.font.name = "黑体"
# 设置像黑体这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"), "黑体")
# 正文结构第二级
def zhengwen_num2(data):
p = doc.add_paragraph()
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
#每段首行缩进二个字符
paragraph_format = p.paragraph_format
paragraph_format.first_line_indent = Inches(0.5)
# 设置字体大小,三号
run.font.size = Pt(16)
# 设置文字类型
run.font.name = "楷体_GB2312"
# 设置像微软雅黑这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"), "楷体_GB2312")
# 正文结构第三级
def zhengwen_num3(data):
p = doc.add_paragraph()
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
#每段首行缩进二个字符
paragraph_format = p.paragraph_format
paragraph_format.first_line_indent = Inches(0.5)
# 设置字体大小,三号
run.font.size = Pt(16)
#加粗
run.font.bold = True
# 设置文字类型
run.font.name = "仿宋_GB2312"
# 设置像仿宋_GB2312这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"), "仿宋_GB2312")
# 正文结构
def zhengwen(data):
p = doc.add_paragraph()
# 顶格居左,三号楷体GB
run = p.add_run(str(data))
#每段首行缩进二个字符
paragraph_format = p.paragraph_format
paragraph_format.first_line_indent = Inches(0.5)
# 设置字体大小,三号
run.font.size = Pt(16)
# 设置文字类型
run.font.name = "仿宋_GB2312"
# 设置像仿宋_GB2312这样的中文字体,必须添加下面2行代码
r = run._element.rPr.rFonts
r.set(qn("w:eastAsia"), "仿宋_GB2312")
#第七段,正文部分
while(1):
num = int(input('请输入段落级别'))
data = input('请输入相关数据')
if 0 == num:
zhengwen(data)
print('保存数据到正文')
elif(num == 1):
zhengwen_num1(data)
print('保存数据到一级标题')
elif(num == 2):
zhengwen_num2(data)
print('保存数据到二级标题')
elif(num == 3):
zhengwen_num3(data)
print('保存数据到三级标题')
# 按-1--回车--回车结束
elif(num == -1):
break
doc.save('xxx报告.docx')
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。