1、需求说明

现需要做一份数据报告,报告中只需插入少量图片,其他部分的文字和格式不变,需要将图片插入word文件的指定位置,并最终生成一份pdf报告。注意:是基于已有word文件插入图片,不是创建word文件的同时插入图片。

本文将图片插入指定位置的方法,是使用“表格定位”法。所使用的第三方库为:python-docx  (操作word文件),win32com(word文件转成pdf),所需自行安装。

2、效果展示

在word文件中实现任意位置插入图片,同时,可通过设置表格的格式,将插入图片的位置进行居中显示,表格的框线去除等。

3、代码展示

以下代码可实现上述所有内容,各位小伙伴可根据自己需求再进行优化。

from win32com.client import constants,gencache
from docx import Document
from docx.shared import Inches,Pt,Cm# 将图片插入word指定位置
def save_img_to_doc(img):loc_doc = 'C:\\Users\\dongjunli\\Desktop\\report.docx' rloc_doc = 'C:\\Users\\dongjunli\\Desktop\\r_report.docx'# 打开模板文件document = Document(loc_doc)document.tables         #搜索word里面所有的表格tb1=document.tables[4]  #选好将图片插入的位置,以表格的位置来确定,‘4’代表第5个表格tb1.cell(0, 0).paragraphs[0].add_run().add_picture(img)    #在表格(0,0)位置的单元格的第一个段落里添加图像# print('图形图像的数量:', len(document.inline_shapes))document.inline_shapes[0].height = Cm(10.55)  #指定插入图片的高度document.inline_shapes[0].width = Cm(14.55)   #指定插入图片的宽度document.save(rloc_doc)  #保存为新的word文件# word文件转换为pdf文件
def word2pdf(rloc_doc,pdfPath):wordPath = rloc_docword = gencache.EnsureDispatch('Word.Application')doc = word.Documents.Open(wordPath,ReadOnly=1)doc.ExportAsFixedFormat(pdfPath,constants.wdExportFormatPDF)if __name__ == '__main__':img = 'C:\\Users\\dongjunli\\Desktop\\figure.png'save_img_to_doc(img)rloc_doc = 'C:\\Users\\dongjunli\\Desktop\\r_report.docx'pdfPath = 'C:\\Users\\dongjunli\\Desktop\\r_report.pdf'word2pdf(rloc_doc,pdfPath)

如有帮到您,还能帮忙点赞以下,谢谢!

python将图片插入word文件的指定位置,并转为pdf文件相关推荐

  1. freemarker生成word文档,通过libreoffice完美转为pdf文件排版不乱(包含调用浏览器打印pdf)

    了解libreoffice的朋友都知道,freemarker是用xml生成的word文档,libreoffice打开这些文档会不兼容,会直接显示xml代码或排版差别很大,尤其是文档中包含一些复杂表格的 ...

  2. 将图片名写入txt文件 根据txt文件中的图片名提取特定图像 将图片插入word

    本文讲述3种方法,分别是:1. 将图片名写入txt文件:2. 根据txt文件中的图片名提取特定图像:3. 将图片插入word 将图片名写入txt文件(可将训练集.测试集中图片名分别记录在txt文件中) ...

  3. Python:matplotlib pyplot库函数 savefig所支持的格式以及图片插入word保存后模糊的完美解决方法

    Python:matplotlib pyplot库函数 savefig所支持的格式以及图片插入word保存后模糊的完美解决方法 202012月更新 savefig支持的格式 图片插入word,保存后不 ...

  4. chatgpt赋能python:如何使用Python将图片转换为Word?

    如何使用Python将图片转换为Word? 在当今的数字世界中,图像和文字相互交织,成为了最基本最有用的元素之一.因此,我们需要将图像转换为可编辑的文本,以方便编辑与排版.在本文中,我们将介绍如何使用 ...

  5. python的tkinter插入图片_详解python tkinter 图片插入问题

    通过tkinter.PhotoImage插入GIF, PGM/PPM格式的图片. import tkinter class Gui: def __init__(self): self.gui=tkin ...

  6. python获取pdf页数_Python分割指定页数的pdf文件方法

    Python分割指定页数的pdf文件方法 如下所示: from PyPDF2 import PdfFileWriter, PdfFileReader # 开始页 start_page = 0 # 截止 ...

  7. Python按照指定页数分割PDF文件

    已经更新PDF分割器3.0 通过Python中的PyPDF2模块实现, 具体操作步骤分为: 1.获取原始pdf文件: 2.将要分割的PDF内容格式化: 3.实例一个 PDF文件编写器: 4.把3到4页 ...

  8. python自动化办公——定制化将电子签名批量签写到PDF文件

    python自动化办公--定制化将电子签名批量签写到PDF文件 文章目录 python自动化办公--定制化将电子签名批量签写到PDF文件 1.安装依赖 2.需求分析 3.代码 1.安装依赖 首先需要下 ...

  9. C语言实现文件的局部修改,C语言:在文件的指定位置实现局部修改,而无需重写文件的其他部分...

    前言(可跳过) 在进行大型文件的读写操作时,若采用读打开文件a,再将"a中修改删除位置之前的内容+修改删除的内容+a中修改删除位置之后的内容"保存到文件b,关闭并删除文件a,将文件 ...

最新文章

  1. cmd连接oracle_Oracle -PLSQLDeveloper 13 数据库连接
  2. spoj2 Prime Generator
  3. NOIP 2017 提高组 K: 奶酪 (SPFA || 并查集)
  4. wxWidgets:窗口样式
  5. SpringBoot2.1.9 分布式锁ShedLock
  6. 7. Oracle数据加载和卸载
  7. python入门基础系列八_Python 入门系列 —— 21. dict 的介绍
  8. JS--我发现,原来你是这样的JS(三)(基础概念--灵魂篇)
  9. ireport5.6+jasperreport6.3开发(四)--以javabean为基准的报表开发(ireport)
  10. 9月22日云栖精选夜读:脑洞 | 横扫围棋界的AlphaGo竟然出纪录片了!介意剧透者慎点…...
  11. HDU2010 水仙花数【进制】
  12. prepareStatament和Statement和callableStatement的区别
  13. stephen boyd著王书宁译凸优化课后题答案
  14. 魔界/指环王三部曲(加长版)在线观看免费bt下载
  15. FusionStorage原理及组件
  16. directive-自定义指令
  17. android微信小程序自动填表_微信小程序自动化实战(一)
  18. 一时语噻:二面鹅厂,面试官问出Nginx你了解吗?
  19. 纤亿通谈大型数据中心互联之T级光传输解决方案
  20. JMeter做性能测试之前,你应该要知道的套路?

热门文章

  1. 洛谷P4735 最大异或和
  2. android自定义View之margin和padding的处理
  3. 低密度奇偶校验码(LDPC)
  4. 毕业设计——> 基于SSM的网上购物商城系统(有商城+商城后台)
  5. DNS和BIND总结
  6. 谁能抚平代课教师心里的伤痛
  7. python 文件操作 os模块和shutil模块
  8. Kaggle(Gun Violence Data)—美国枪支暴力事件分析(1)和(2)
  9. 视频教程-深入学习matlab免疫算法7讲-Matlab
  10. [Texture]详解Texture2D