介绍
本篇内容主要讲解“python如何批量将PPT导出成图片集”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python如何批量将PPT导出成图片集”吧!
导读
需要使用python做一个将很多个不规则PPT导出成用文件夹归纳好的图片集,所以就需要使用comtypes调用本机电脑上的PPT软件,批量打开另存为多张图片
采坑
公司电脑使用comtypes完美导出图片,系统win10
回家后使用自己的电脑就报错,系统也是win10,最后没办法放弃comtypes采用win32com,最终成功
源代码
“““ 该工具函数的功能:批量将PPT导出成图片 “““ import comtypes.client import 操作系统 import win32com import win32com.client #,base 路径 时间=BASH_PATH & # 39; C: python web \ \ \ \ \ \ \ \工具formatPPTtaobao比率\ \ \ \ & # 39; #,render jpg=RENDER_BASE_PATH & # 39; C: \ \ \ \ formatPPTtaobao python web \ \ \ \工具\ \渲染\ \ & # 39; #,初始化PPT def init_powerpoint (): powerpoint 才能=,win32com.client.Dispatch (& # 39; PowerPoint.Application& # 39;), # comtypes.client.CreateObject (“Powerpoint.Application") powerpoint.Visible 才能=1 ,return 幻灯片 #,PPT 用PDF def ppt_to_pdf_or_jpg (inputFileName,幻灯片,还以为,outputFileName, formatType =, 32): if 才能outputFileName [3:], !=, & # 39; pdf # 39;: ,,,outputFileName =, outputFileName (0: 4), +,“.pdf" 时间=deck 才能;powerpoint.Presentations.Open (inputFileName) #才能deck.SaveAs (outputFileName, formatType), #, formatType =, 32, for ppt 用pdf deck.SaveAs才能(inputFileName.rsplit(& # 39;强生# 39;)[0],+,& # 39;jpg # 39;,, 17) deck.Close才能() ,#,节省file as  a 文件夹 def convert_files_in_folder(幻灯片,文件夹): 时间=files 才能;os.listdir(文件夹) pptfiles 才能=,[f for  f 拷贝files if f.endswith ((“.ppt",,“.pptx"))) 打印(pptfiles)才能 for 才能;pptfile  pptfiles:拷贝 ,,,fullpath =, os.path.join(慢性消耗病,pptfile) ,,,ppt_to_pdf_or_jpg (fullpath,幻灯片,还以为;fullpath) #,delete more  ppt 以及select 20, def delete_more_ppt(文件夹): 时间=files os.listdir(文件夹) allNum =, len(文件) endPoint =0 如果(allNum & lt;=, 20): 返回 其他: 时间=endPoint allNum 安康;20 for f 拷贝文件(0:端点): 如果(os.path.isfile(文件夹+ f)): os.unlink(文件夹+ f) #,exec picture 复合 def execPictureComposite (): os.system (& # 39; python  componsite_jpg_taobao.py& # 39;) 通过 #,delete render  jpg格式 def deleteRenderJpg (): 时间=jpgs 才能;os.listdir (RENDER_BASE_PATH) for 才能;jpg 拷贝jpg格式: ,,,os.unlink (RENDER_BASE_PATH + jpg) if __name__ ==,“__main__": cwd 才能=BASH_PATH delete_more_ppt才能(鹿) deleteRenderJpg才能() 时间=powerpoint 才能;init_powerpoint () convert_files_in_folder才能(幻灯片,慢性消耗病) powerpoint.Quit才能() execPictureComposite才能()
<强>补充:用python处理ppt中的文字强>
我就废话不多说了,大家还是直接看代码吧~
得到pptx import 演示 得到pptx.util import 英寸,Pt ppt演示()=#在ppt中加入一个幻灯片 幻灯片=ppt.slides.add_slide (ppt.slide_layouts [1]) #第一种 body_shape=slide.shapes.placeholders body_shape [0]。text=& # 39;这是占位符[0]& # 39; body_shape [1]。text=& # 39;这是占位符[1]& # 39; #第二种 title_shape=slide.shapes.title title_shape.text=& # 39;这里是标题& # 39; #取出本页第二个文本框 字幕=slide.shapes.placeholders [1] #在第二个文本框里写入汉字 subtitle.text=& # 39;这里是文本框& # 39; #在文本框里添加一个段落 new_paragraph=body_shape [1] .text_frame.add_paragraph () new_paragraph.text=& # 39;新段落& # 39; new_paragraph.font.bold=True new_paragraph.font.italic=True new_paragraph.font.size=Pt (15) new_paragraph.font.underline=True #添加文本框 左=英寸(2) 顶级=英寸(2) 宽度=英寸(3) 身高=英寸(3) 文本框=slide.shapes.add_textbox(左,上,width.height) textbox.text=?这是新文本框“; #在文本框里添加新段落 new_par=textbox.text_frame.add_paragraph () new_par.text=& # 39;这是文本框里的第二段& # 39; ppt.save (& # 39; test.pptx& # 39;);python如何批量将PPT导出成图片集