开发者

Python利用pptx操作PPT实现幻灯片的删除与替换

开发者 https://www.devze.com 2023-02-04 09:16 出处:网络 作者: 虚坏叔叔
目录一、原理二、操作流程三、代码一、原理 通过查找ppt中的图片指纹替换 二、操作流程php
目录
  • 一、原理
  • 二、操作流程
  • 三、代码

一、原理

通过查找ppt中的图片指纹替换

二、操作流程php

原始ppt如下:

Python利用pptx操作PPT实现幻灯片的删除与替换

Python利用pptx操作PPT实现幻灯片的删除与替换

根据oldpic.png的md5指纹 找到图片

if md5img == md5finger:                   
                    slide.shapjses.add_picture(newpic, shape.left, shape.top, shape.width, shape.height)
                    e.www.devze.comgetparent().remove(e)

oldpic.png

Python利用pptx操作PPT实现幻灯片的删除与替换

想要替换的newpic.png

Python利用pptx操作PPT实现幻灯片的删除与替换

最后生成的成果如下:

Python利用pptx操作PPT实现幻灯片的删除与替换

Python利用pptx操作PPT实现幻灯片的删除与替换

开发者_JS培训

三、代码

完整代码如下:

def replace_pic4shapes(filename, newpic, oldpic):
    # 把旧样本图片Logo,获取指纹
    imageFile = open(oldpic, "rb")
    imgBlob = imageFile.read()
 android   md5finger = hashlib.md5(imgBlob).hexdigest()
    prs = Presentation(filename)
 
    for slide in list(prs.slides)[0:]:
        for shape in list(slide.shapes):
            ispicture= False
            try:
                md5img = hashlib.md5(shape.image.blob).hexdigestqpRXio()
                ispicture = True
            except:
                pass
            e = shape.element
            if ispicture:
                if md5img == md5finger:                   
                    slide.shapes.add_picture(newpic, shape.left, shape.top, shape.width, shape.height)
                    e.getparent().remove(e)
                pass
 
    prs.save("课件工坊-长征组歌新文件.pptx")

到此这篇关于python利用pptx操作PPT实现幻灯片的删除与替换的文章就介绍到这了,更多相关Python PPT幻灯片删除替换内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号