1、代码示例
docxtpl 一个很强大的包,其主要通过对docx文档模板加载,从而对其进行修改,我主要是用docxtpl对图片进行替换。
简单代码如下:
import base64 from docxtpl import DocxTemplate pl = int(input('输出数字:')) num = 'D:\\py\\testdata\\1.docx' tpl = DocxTemplate(num) # 定义图片名称位置 context = { 1: '1.jpg', 2: '2.jpg', } images = "base64" tmp_img = "%s.jpg" % (pl) with open(tmp_img, 'wb') as image_tpl: data = images.split(',') imgs_tmp = base64.b64decode(data[1]) image_tpl.write(imgs_tmp) datas = image_tpl.name print(datas) # 判断位置,进行图片替换 if tpl: tpl.replace_pic(context.get(pl), datas) print(tpl) tpl.save("决定1003.docx") print(tpl)
2、查找图片的位置
如果图片位置不清楚可以使用docx转xml,然后进行解压在目录word\document.xml下面可以找到图片的位置。