导读

需要使用python做一个将很多个不规则PPT导出成用文件夹归纳好的图片集,所以就需要使用comtypes调用本机电脑上的ppt软件,批量打开另存为多张图片

采坑

  • 公司电脑使用comtypes完美导出图片,系统win10
  • 回家后使用自己的电脑就报错,系统也是win10,最后没办法放弃comtypes采用win32com,最终成功

源代码

"""该工具函数的功能:批量将PPT导出成图片"""import comtypes.client
import os
import win32com
import win32com.client# base path
BASH_PATH = 'C:\\web\\python\\tool\\formatPPTtaobao\\ppts\\'# render jpg
RENDER_BASE_PATH = 'C:\\web\\python\\tool\\formatPPTtaobao\\render\\'# 初始化PPT
def init_powerpoint():powerpoint = win32com.client.Dispatch('PowerPoint.Application') #comtypes.client.CreateObject("Powerpoint.Application")powerpoint.Visible = 1return powerpoint# PPT TO PDF
def ppt_to_pdf_or_jpg(powerpoint, inputFileName, outputFileName, formatType = 32):if outputFileName[-3:] != 'pdf':outputFileName = outputFileName[0:-4] + ".pdf"deck = powerpoint.Presentations.Open(inputFileName)#deck.SaveAs(outputFileName, formatType) # formatType = 32 for ppt to pdfdeck.SaveAs(inputFileName.rsplit('.')[0] + '.jpg', 17)deck.Close()# save file as a folder
def convert_files_in_folder(powerpoint, folder):files = os.listdir(folder)pptfiles = [f for f in files if f.endswith((".ppt", ".pptx"))]print(pptfiles)for pptfile in pptfiles:fullpath = os.path.join(cwd, pptfile)ppt_to_pdf_or_jpg(powerpoint, fullpath, fullpath)# delete more ppt and select 20
def delete_more_ppt(folder):files = os.listdir(folder)allNum = len(files)endPoint = 0if(allNum <= 20):returnelse:endPoint = allNum - 20for f in files[0:endPoint]:if(os.path.isfile(folder+f)):os.unlink(folder+f)# exec picture composite
def execPictureComposite():os.system('python componsite_jpg_taobao.py')pass# delete render jpgs
def deleteRenderJpg():jpgs = os.listdir(RENDER_BASE_PATH)for jpg in jpgs:os.unlink(RENDER_BASE_PATH+jpg)if __name__ == "__main__":cwd = BASH_PATHdelete_more_ppt(cwd)deleteRenderJpg()powerpoint = init_powerpoint()convert_files_in_folder(powerpoint, cwd)powerpoint.Quit()execPictureComposite()

python批量将PPT导出成图片集相关推荐

  1. Python工具源码,Python批量提取PPT文件中的图片

    在办公场景当中,同样也有这样一个需求,那就是快速批量把PPT文件中的图片提取出来,毕竟一个个点击另存为太过于繁琐,以及耗费时间,前面本渣渣分享过如何应用Python批量提取PDF文件中的图片,而这一篇 ...

  2. 用Python快速将ppt制作成配音视频课件的方法

    ☞ ░ 老猿Python博文目录 ░ 一.引言 老猿从来没有录播个视频课件,但最近有要求在一周内必须录制一个视频课件,为此花了3天时间准备ppt,花了一个小时录播了一个20多分钟的课件. 由于第一次干 ...

  3. python抓取数据库数据封装成json_用Python将mysql数据导出成json的方法

    1.相关说明 此脚本可以将Mysql的数据导出成Json格式,导出的内容可以进行select查询确定. 数据传入参数有:dbConfigName, selectSql, jsonPath, fileN ...

  4. Python批量调整PPT文档样式

    Python批量调整PPT文档样式 在日常工作中,我们经常需要制作PPT文档来展示我们的工作成果或者进行汇报.但是,如果我们需要同时更改多张PPT的样式,手动修改会非常耗时且繁琐.此时,我们可以利用P ...

  5. 如何批量完成PPT转换成PDF

    PPT作为日常生活工作中非常重要的一种表达形式,具有非常重要的作用.PPT转换PDF,如果一页页转换是不可能的,只需要六步就能完成PPT转换PDF,还能快速实现多份PPT文档同时批量转换.看完下面的操 ...

  6. 利用PowerPoint把PPT导出成60帧1080P的视频

    想要把PPT导出成1080P60帧率的视频,可以尝试以下办法 软件用的是office power point 1 .打开开发工具选项 点击文件–>选项–>自定义功能区 这时候就有了开发工具 ...

  7. Python批量转换ppt文件为pptx文件

    代码功能:把PowerPoint 2003以及更低版本的ppt文件批量转换为PowerPoint 2007及更高版本的pptx文件. 代码原理:模拟使用PowerPoint软件打开ppt文件然后另存为 ...

  8. VSTO开发PPT插件将PPT导出成图片

    编辑器Visual Studio 2022 官网下载地址 https://visualstudio.microsoft.com/zh-hans/ 安装参考 VSTO开发Powerpoint插件 htt ...

  9. python批量将pdf转成word_Python-PDF转为Word

    手把手 | 20行Python代码教你批量将PDF转为Word 作者|丁彦军 给各位带来了一个免费简单快速的方法,手把手教你用Python批量处理PDF格式文件,获取自己想要的内容,存为word形式. ...

最新文章

  1. Python3 登陆网页并保持cookie
  2. android反编译出错,反编译出错信息
  3. 012_JDBC模板
  4. Mac OS使用技巧之十二:解决APP Store更新、下载出错的问题
  5. DOM(document object model),文档对象模型
  6. 动态规划——双11既可以薅羊毛还能花钱最少
  7. 20155234 2016-2017-2 《Java程序设计》第5周学习总结
  8. html5边框闪烁,HTML – CSS框阴影动画像素艺术闪烁
  9. SQL知识你了解多少?
  10. 一场游戏平台商与游戏大厂的战争
  11. 图解HTTP笔记(二)——HTTP状态码
  12. TIF合并Java代码
  13. 学python能做什么-学完Python可以做什么?
  14. NLP学习—11.实现基于PyTorch与LSTM的情感分类
  15. lambda表达式传参
  16. linux系统iso文件详解,ISO镜像文件解析
  17. 2018计算机应用基础教材,2018年计算机应用基础课件全套PPT电子档.ppt
  18. 谷歌浏览器如何截全屏长图(非常实用)
  19. 【原生微信小程序】 组件的使用,权限弹窗
  20. 如何查看电脑是否支持CUDA及支持的CUDA版本

热门文章

  1. 基于Web开发资料专集
  2. 软件开发生命周期(SDLC) 【详解】(含公司产品研发流程图、大厂研发架构图、大厂研发流程图)
  3. 锐捷ruijie无线控制器AC登录说明
  4. [QT]clicked(bool)与toggled(bool)区别
  5. Firefox(火狐浏览器)常见插件应用
  6. 数据库数据修改报错The instance of entity type ‘XXX‘ cannot be tracked
  7. uni app中使用图表
  8. java.net.MalformedURLException异常说明
  9. 策略岗、分析岗、模型岗,在不同机构的组织架构是怎样的?
  10. 7.2 MVC 实现登录验证