python将图片插入word文件的指定位置,并转为pdf文件
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文件相关推荐
- freemarker生成word文档,通过libreoffice完美转为pdf文件排版不乱(包含调用浏览器打印pdf)
了解libreoffice的朋友都知道,freemarker是用xml生成的word文档,libreoffice打开这些文档会不兼容,会直接显示xml代码或排版差别很大,尤其是文档中包含一些复杂表格的 ...
- 将图片名写入txt文件 根据txt文件中的图片名提取特定图像 将图片插入word
本文讲述3种方法,分别是:1. 将图片名写入txt文件:2. 根据txt文件中的图片名提取特定图像:3. 将图片插入word 将图片名写入txt文件(可将训练集.测试集中图片名分别记录在txt文件中) ...
- Python:matplotlib pyplot库函数 savefig所支持的格式以及图片插入word保存后模糊的完美解决方法
Python:matplotlib pyplot库函数 savefig所支持的格式以及图片插入word保存后模糊的完美解决方法 202012月更新 savefig支持的格式 图片插入word,保存后不 ...
- chatgpt赋能python:如何使用Python将图片转换为Word?
如何使用Python将图片转换为Word? 在当今的数字世界中,图像和文字相互交织,成为了最基本最有用的元素之一.因此,我们需要将图像转换为可编辑的文本,以方便编辑与排版.在本文中,我们将介绍如何使用 ...
- python的tkinter插入图片_详解python tkinter 图片插入问题
通过tkinter.PhotoImage插入GIF, PGM/PPM格式的图片. import tkinter class Gui: def __init__(self): self.gui=tkin ...
- python获取pdf页数_Python分割指定页数的pdf文件方法
Python分割指定页数的pdf文件方法 如下所示: from PyPDF2 import PdfFileWriter, PdfFileReader # 开始页 start_page = 0 # 截止 ...
- Python按照指定页数分割PDF文件
已经更新PDF分割器3.0 通过Python中的PyPDF2模块实现, 具体操作步骤分为: 1.获取原始pdf文件: 2.将要分割的PDF内容格式化: 3.实例一个 PDF文件编写器: 4.把3到4页 ...
- python自动化办公——定制化将电子签名批量签写到PDF文件
python自动化办公--定制化将电子签名批量签写到PDF文件 文章目录 python自动化办公--定制化将电子签名批量签写到PDF文件 1.安装依赖 2.需求分析 3.代码 1.安装依赖 首先需要下 ...
- C语言实现文件的局部修改,C语言:在文件的指定位置实现局部修改,而无需重写文件的其他部分...
前言(可跳过) 在进行大型文件的读写操作时,若采用读打开文件a,再将"a中修改删除位置之前的内容+修改删除的内容+a中修改删除位置之后的内容"保存到文件b,关闭并删除文件a,将文件 ...
最新文章
- cmd连接oracle_Oracle -PLSQLDeveloper 13 数据库连接
- spoj2 Prime Generator
- NOIP 2017 提高组 K: 奶酪 (SPFA || 并查集)
- wxWidgets:窗口样式
- SpringBoot2.1.9 分布式锁ShedLock
- 7. Oracle数据加载和卸载
- python入门基础系列八_Python 入门系列 —— 21. dict 的介绍
- JS--我发现,原来你是这样的JS(三)(基础概念--灵魂篇)
- ireport5.6+jasperreport6.3开发(四)--以javabean为基准的报表开发(ireport)
- 9月22日云栖精选夜读:脑洞 | 横扫围棋界的AlphaGo竟然出纪录片了!介意剧透者慎点…...
- HDU2010 水仙花数【进制】
- prepareStatament和Statement和callableStatement的区别
- stephen boyd著王书宁译凸优化课后题答案
- 魔界/指环王三部曲(加长版)在线观看免费bt下载
- FusionStorage原理及组件
- directive-自定义指令
- android微信小程序自动填表_微信小程序自动化实战(一)
- 一时语噻:二面鹅厂,面试官问出Nginx你了解吗?
- 纤亿通谈大型数据中心互联之T级光传输解决方案
- JMeter做性能测试之前,你应该要知道的套路?