37 lines
863 B
Python
37 lines
863 B
Python
# -*- coding: utf-8 -*-
|
|
"""
|
|
Created : 2019-05-22
|
|
|
|
@author: Eric Dufresne
|
|
"""
|
|
|
|
from docxtpl import DocxTemplate
|
|
import io
|
|
|
|
DEST_FILE = "output/header_footer_image_file_obj.docx"
|
|
DEST_FILE2 = "output/header_footer_image_file_obj2.docx"
|
|
|
|
tpl = DocxTemplate("templates/header_footer_image_tpl.docx")
|
|
|
|
context = {
|
|
"mycompany": "The World Wide company",
|
|
}
|
|
|
|
dummy_pic = io.BytesIO(open("templates/dummy_pic_for_header.png", "rb").read())
|
|
new_image = io.BytesIO(open("templates/python.png", "rb").read())
|
|
tpl.replace_media(dummy_pic, new_image)
|
|
tpl.render(context)
|
|
tpl.save(DEST_FILE)
|
|
|
|
tpl = DocxTemplate("templates/header_footer_image_tpl.docx")
|
|
dummy_pic.seek(0)
|
|
new_image.seek(0)
|
|
tpl.replace_media(dummy_pic, new_image)
|
|
tpl.render(context)
|
|
|
|
file_obj = io.BytesIO()
|
|
tpl.save(file_obj)
|
|
file_obj.seek(0)
|
|
with open(DEST_FILE2, "wb") as f:
|
|
f.write(file_obj.read())
|