python 利用word中占位符号实现按word指定位置插入图片

from docx import Document
from docx.shared import Inches
from docx.oxml.ns import qn
from docx.enum.text import WD_ALIGN_PARAGRAPH


def center_insert_img(doc, img):
    """插入图片"""
    for paragraph in doc.paragraphs:
        # 根据文档中的占位符定位图片插入的位置
        if '<<img1>>' in paragraph.text:
            # 把占位符去掉
            paragraph.text = paragraph.text.replace('<<img1>>', '')
            run = paragraph.add_run('')
            run.add_break()
            # 添加图片并指定大小
            run.add_picture(img, width=Inches(6.2))


def save_img_to_doc(img):
    """把图片保存到doc文件中的指定位置"""
    tpl_doc = 'C:/Users/Thinkpad/Desktop/2.docx'
    res_doc = 'C:/Users/Thinkpad/Desktop/22.docx'
    # 打开模板文件
    document = Document(tpl_doc)
    # 插入图片居中
    center_insert_img(document, img)
    # 保存结果文件
    document.save(res_doc)


def main():
    """主函数"""
    img = r'C:/Users/Thinkpad/Desktop/1.png'
    save_img_to_doc(img)


if __name__ == '__main__':
    main()
 

猜你喜欢

转载自blog.csdn.net/ducanwang/article/details/131477295