Word套用简单模板实例(docx模块)

套用模板(简单)实例

 1 from docx import Document
 2 from docx.enum.text import WD_ALIGN_PARAGRAPH
 3 from docx.shared import Pt
 4 from docx.oxml.ns import qn
 5
 6 lists = ["张三", "李四", "王五", "赵六"] # 合同清单
 7
 8 for change in lists:
 9     document = Document()
10     document.styles["Normal"].font.name = u"黑体" # 设置西文字体
11     document.styles["Normal"]._element.rPr.rFonts.set(qn(‘w:eastAsia‘), u‘仿宋_GB2312‘) # 设置中文字体
12
13     def add_context(context):
14         p = document.add_paragraph()
15         p.alignment = WD_ALIGN_PARAGRAPH.LEFT # 设置字段左对齐
16         r = p.add_run(str(context))
17         r.font.size = Pt(16) # 设置字体16磅
18         p.space_after = Pt(5) # 设置段后距离5磅
19         p.space_before = Pt(5) # 设置段后距离5磅
20
21     # 文件主体内容
22     add_context("汉皇重色思倾国,御宇多年求不得。杨家有%s初长成,养在深闺人未识。" % change)
23     add_context("天生丽质难自弃,一朝选在君王侧。回眸一笑百媚生,六宫粉黛无颜色。")
24     add_context("春寒赐浴华清池,温泉水滑洗凝脂。侍儿扶起娇无力,始是新承恩泽时。")
25     add_context("云鬓花颜金步摇,芙蓉帐暖度春宵。春宵苦短日高起,从此君王不早朝。")
26     add_context("承欢侍宴无闲暇,春从春游夜专夜。后宫佳丽三千人,三千宠爱在一身。")
27     add_context("金屋妆成娇侍夜,玉楼宴罢醉和春。姊妹弟兄皆列土,可怜光彩生门户。")
28     add_context("遂令天下父母心,不重生男重生%s。骊宫高处入青云,仙乐风飘处处闻。" % change)
29     add_context("缓歌慢舞凝丝竹,尽日君王看不足。渔阳鼙鼓动地来,惊破霓裳羽衣曲。")
30     add_context("九重城阙烟尘生,千乘万骑西南行。翠华摇摇行复止,西出都门百余里。")
31     add_context("六军不发无奈何,宛转蛾眉马前死。花钿委地无人收,翠翘金雀玉搔头。")
32     add_context("君王掩面救不得,回看血泪相和流。")
33
34     document.save("长恨歌-%s.docx" % change)
35     print("完成%s的合同!" % change)
from docx import Documentfrom docx.enum.text import WD_ALIGN_PARAGRAPHfrom docx.shared import Ptfrom docx.oxml.ns import qn

lists = ["张三", "李四", "王五", "赵六"] # 合同清单

for change in lists:    document = Document()    document.styles["Normal"].font.name = u"黑体" # 设置西文字体document.styles["Normal"]._element.rPr.rFonts.set(qn(‘w:eastAsia‘), u‘仿宋_GB2312‘) # 设置中文字体

def add_context(context):        p = document.add_paragraph()        p.alignment = WD_ALIGN_PARAGRAPH.LEFT # 设置字段左对齐r = p.add_run(str(context))        r.font.size = Pt(16) # 设置字体16磅p.space_after = Pt(5) # 设置段后距离5磅p.space_before = Pt(5) # 设置段后距离5磅

# 文件主体内容add_context("汉皇重色思倾国,御宇多年求不得。杨家有%s初长成,养在深闺人未识。" % change)    add_context("天生丽质难自弃,一朝选在君王侧。回眸一笑百媚生,六宫粉黛无颜色。")    add_context("春寒赐浴华清池,温泉水滑洗凝脂。侍儿扶起娇无力,始是新承恩泽时。")    add_context("云鬓花颜金步摇,芙蓉帐暖度春宵。春宵苦短日高起,从此君王不早朝。")    add_context("承欢侍宴无闲暇,春从春游夜专夜。后宫佳丽三千人,三千宠爱在一身。")    add_context("金屋妆成娇侍夜,玉楼宴罢醉和春。姊妹弟兄皆列土,可怜光彩生门户。")    add_context("遂令天下父母心,不重生男重生%s。骊宫高处入青云,仙乐风飘处处闻。" % change)    add_context("缓歌慢舞凝丝竹,尽日君王看不足。渔阳鼙鼓动地来,惊破霓裳羽衣曲。")    add_context("九重城阙烟尘生,千乘万骑西南行。翠华摇摇行复止,西出都门百余里。")    add_context("六军不发无奈何,宛转蛾眉马前死。花钿委地无人收,翠翘金雀玉搔头。")    add_context("君王掩面救不得,回看血泪相和流。")

    document.save("长恨歌-%s.docx" % change)    print("完成%s的合同!" % change)

原文地址:https://www.cnblogs.com/zhouyxh/p/12309609.html

时间: 2024-10-12 21:01:04

Word套用简单模板实例(docx模块)的相关文章

Java:封装POI实现word的docx文件的简单模板功能

一:场景 通过Word模板来实现动态的word生成 二: 基本要求 1:替换文本中的内容 2:替换表格中的内容(不用动态生成表格) 3:替换后的内容应该与替换前的内容格式相同 4:模板修改方便 5:效果如下: 模板: 结果: 三:poi分析 使用方法:直接读取word文件,替换里面各个部分的内容 优点:直接使用word文件作为模板 缺点:本身的替换逻辑无法保留格式 四:为什么选择封装POI 1:因为时间和学习成本(懒)的问题,没有研究docx的xml规则,因此决定直接对现有的工具进行封装,来实现

运用Unity实现依赖注入[结合简单三层实例]

一:理论部分 依赖注入:这是 Ioc 模式的一种特殊情况,是一种基于改变对象的行为而不改变类的内部的接口编程技术.开发人员编写实现接口的类代码,并基于接口或者对象类型使用容器注入依赖 的对象实例到类中.用于注入对象实例的技术是接口注入.构造函数注入.属性(设置器)注入和方法调用注入. Unity是微软企业库一部分,是一个轻量级.可扩展的依赖注入容器,支持构造函数.属性和方法调用注入: 针对依赖注入以前我也写过一篇结合三层的文章:spring.net 结合简单三层实例 二:实例简介 1:本实例将通

Linux 进程间通信(posix消息队列 简单)实例

Linux 进程间通信(posix消息队列 简单)实例 详情见: http://www.linuxidc.com/Linux/2011-10/44828.htm 编译: gcc -o consumer consumer.c -lrt gcc -o producer producer.c -lrt /* * * Filename: producer.c * * Description: 生产者进程 * * Version: 1.0 * Created: 09/30/2011 04:52:23 PM

C# 简单线程实例

1.简单线程实例 以及委托(同步委托.异步委托) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Runtime.Remoting.Messaging; namespace ThreadTest { class Program { static void Main(string[] args) { C

Javascript 实现简单计算器实例代码

Javascript 实现简单计算器实例代码 这篇文章主要介绍了Javascript 实现简单计算器实例代码的相关资料,需要的朋友可以参考下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63

Linux简单程序实例(GNU工具链,进程,线程,无名管道pipe,基于fd的文件操作,信号,scoket)

一, GNU工具链简介: (1)编译代码步骤: 预处理 -> 编译 -> 汇编 -> 链接: 预处理:去掉注释,进行宏替换,头文件包含等工作: gcc -E test.c -o test.i 编译:   不同平台使用汇编语言不同,汇编将高级语言编译成汇编语言: gcc -S test.c -o test.s 汇编:   将汇编语言翻译成二进制代码: gcc -c test.c -o test.o 链接:   包含各函数库的入口,得到可执行文件: gcc -o test test.c (2

Android HttpGet() 请求简单入门实例

HttpClient httpclient = new DefaultHttpClient(); String url = "http://example.com"; List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add( new BasicNameValuePair( "param", "value" ) ); URI uri =

spring aop简单日志实例

转载自:http://www.blogjava.net/laoding/articles/242611.html 一直就用spring的IOC,遗憾spring的另一重要组成部分AOP却没用过,所以近几天抽空研究了下AOP,学了些东西,在这里记录下spring2.0的aop配置,以一个简单的记录日志的实例来说明,先介绍下用XMLSchema来配置,下一篇介绍annotation配置,废话不多说,开始吧先新建个web工程,将spring的包加进去,为方便就把全部的jar包加进去. 先来看个接口,很

JSP+servlet简单登录实例

一个简单的jsp+servlet实例,实现简单的登录 转载▼ http://blog.sina.com.cn/s/blog_5c5bc9070100z7wb.html     开发环境myeclipse+tomcat6 1.先创建web project,项目名为RegisterSystem, 2.在WebRoot 目录下创建login.jsp文件,只需修改body中的内容,如下所示: <body>     <form action="login">     us