【摸鱼技巧一】【python】PPT批量转PDF

【摸鱼技巧一】【python】PPT批量转PDF,第1张

文章目录
    • 准备工作
    • 运行效果
    • 代码
    • 后记

准备工作
  1. 打开电脑,打开ppt准备复习预习,为了好翻页转出PDF,但是PPT有很多章,需要批量转出。

  2. 使用的是 python3.10,office2021

  3. 安装相应的包(应该都有)

  4. 文件位置

运行效果

代码
# 1). 导入需要的模块(打开应用程序的模块)
import win32com.client
import os
def ppt2pdf(filename, output_filename):
    """
    PPT文件导出为pdf格式
    filename: PPT文件的名称
    output_filename: 导出的pdf文件的名称
    """
    # 2). 打开PPT程序
    ppt_app = win32com.client.Dispatch('PowerPoint.Application')
    # ppt_app.Visible = True  # 程序 *** 作应用程序的过程是否可视化

    # 3). 通过PPT的应用程序打开指定的PPT文件
    # filename = "D:/大三下课程资料/嵌入式/PPT/xxx.ppt"
    # output_filename = "D:/大三下课程资料/嵌入式/PDF/xxx.pdf"
    
    ppt = ppt_app.Presentations.Open(filename)

    # 4). 打开的PPT另存为pdf文件。17数字是ppt转图片,32数字是ppt转pdf。
    output_filename = output_filename.replace('/', '\');
    print(output_filename)
    ppt.SaveAs(output_filename,32)
    print(output_filename+"导出成pdf格式成功!!!")
    # 退出PPT程序
    ppt_app.Quit()


def main():
    # 要处理的目录名称
    dirname = 'D:/大三下课程资料/嵌入式'
    # 列出指定目录的内容
    filenames = os.listdir(dirname+'/PPT') #D:/大三下课程资料/嵌入式/PPT里面是xxx.ppt
    # for循环依次访问指定目录的所有文件名
    for filename in filenames:
        # 判断文件的类型,对所有的ppt文件进行处理(ppt文件以ppt或者pptx结尾的)
        if filename.endswith('ppt') or filename.endswith('pptx'):
            print(filename)           # PPT.pptx -> PPT.pdf
            # 将filename以.进行分割,返回2个信息,文件的名称和文件的后缀名
            base, ext = filename.split('.')  # base=PPT素材1 ext=pdf
            new_name = base + '.pdf'         # PPT素材1.pdf
            # ppt文件的完整位置:D:/大三下课程资料/嵌入式/PPT/xxx.ppt
            filename = dirname + '/PPT/' + filename
            #print(filename)
            # pdf文件的完整位置:D:/大三下课程资料/嵌入式/PDF/xxx.pdf
            output_filename = dirname + '/PDF/' + new_name
            #print(output_filename)
            # 将ppt转成pdf文件
            ppt2pdf(filename, output_filename)


if __name__ == "__main__":
    main()
后记

如果你说,哎呀,你费这么大劲干嘛,我直接找网上的网站一键批量转换就好了。那我会说,你说的很好,下次不许再说了。。。
官方文档https://docs.microsoft.com/zh-cn/office/vba/api/powerpoint.presentation.saveas

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/794911.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存