利用python将PDF转为PPT(课件专用)

news/2024/11/26 4:52:46/

利用python将PDF转为PPT(课件专用)

前言:课程中老师经常会将课件作为PDF发放而非PPT,而现有的PDF阅读器一般不支持添加修改等操作,所以显得十分麻烦,考虑将PDF转换为PPT格式,方便进行操作。

注意:这里并不是真正地将PDF转为PPT,而只是把PDF作为图片,插入到PPT中!

需要模块:

  • fitz:
  • pptx

直接使用pip包管理工具下载

pip install fitz
pip install python-pptx

代码整体思路:

  • 将pdf抽出作为图片保存
  • 将图片插入PPT中

代码如下:

import fitz
import pptx
from pptx.util import  Inches
def img2pptx(img_path,ppt_name):ppt = pptx.Presentation()  # 生成ppt对象for i in img_path:layout = ppt.slide_layouts[6]  # 定义一个 PPT 页面 插入图片,这里选择样式6slide = ppt.slides.add_slide(layout)image = slide.shapes.add_picture(image_file=i,left=Inches(0),top=Inches(0),width=Inches(10),height=Inches(8))#目前设置会撑满整张PPT,大小可自行调整ppt.save(ppt_name)def pdf2img(pdf_path, img_dir,ppt_name):doc = fitz.open(pdf_path)  # 打开pdfimg_path=[]for page in doc:  # 遍历pdf的每一页zoom_x = 2.0  # 设置每页的水平缩放因子zoom_y = 2.0  # 设置每页的垂直缩放因子mat = fitz.Matrix(zoom_x, zoom_y)pix = page.get_pixmap(matrix=mat)pix.save(r"{}page-{}.png".format(img_dir, page.number))  # 保存img_path.append(r"{}page-{}.png".format(img_dir, page.number))img2pptx(img_path, ppt_name)if __name__ == '__main__':# pdf路径pdf_path = r"./E04.pdf"# 图片保存位置img_dir = r"./"#ppt名称ppt_name="result.pptx"# pdf转图片pdf2img(pdf_path, img_dir,ppt_name)

使用(参数说明):

  • pdf_path:PDF的路径
  • img_dir:图片保存路径
  • ppt_name:保存的ppt的名称

使用时直接修改pdf_path即可!

结果:

image-20221014160529656

转换后效果如图所示:可能比例不大合适,但基本达到自己最初想要的效果!

改进:

可以看到转换后的比例并不是特别让人满意

可以自行调整图片比例来适应:

    left=Inches(1.5),top=Inches(0),width=Inches(7),height=Inches(7.5)

改为上面比例后,效果如下:

image-20221014163327316

感觉会顺眼许多!


http://www.ppmy.cn/news/502889.html

相关文章

PPT怎么转PDF?将Powerpoint(PPT)转换为PDF方法分享

当您在PowerPoint中创建精美的演示文稿时,您不仅想给观众留下深刻的印象,还希望它能够方便地打包,并且文件格式起着重要作用。虽然PPTX是一种广泛传播的格式,但PDF始终是一个安全的选择。以下是有关如何使用在线工具将PowerPoint演…

怎么用Python批量将ppt转换为pdf

这是一个Python脚本,能够批量地将微软Powerpoint文件(.ppt或者.pptx)转换为pdf格式。 使用说明 1、将这个脚本跟PPT文件放置在同一个文件夹下。 2、运行这个脚本。 全部代码 import comtypes.client import os def init_powerpoint(): powe…

对比学习初认识

这篇文章我们通过SimCLR模型来对对比学习技术有一个认知。 1.什么是对比学习系统 根据上面这个图,来介绍下怎么做一个抽象的对比学习系统。以一个图像为例子,通过自动构造正例或负例,形成图片的两个view,通过encoder把它们编码&a…

手机PDF如何转PPT

在办公方案交流之后,PDF格式文档大多数是不能直接编辑的,所以为了后期方便修改或编辑,很多时候会把PDF文件转换为PPT格式,那么手机怎样将PDF转换为PPT格式呢?小编今天就和大家分享一个简单的方法,一起来看看…

python ppt转图片_ppt一键转图片和pdf

日常工作中经常会需要把 ppt 页面转化成图片,通常我们都是对 ppt 页面截图或者使用 office 工具手动将 ppt 页面保存为图片,如果只有一两页 ppt 需要转化就还好,如果有批量的 ppt 需要处理的话那肯定不能手动来处理了,所以我们今天…

教你怎么免费的将PDF转换成PPT

将PDF文件转换成PPT文件是一种非常有用的技能,因为它可以帮助您将一个PDF文件中的文本、图片和其他内容转换成一个幻灯片演示文稿,这样您可以更方便地展示和分享它。虽然有很多商业软件可以帮助您完成这项任务,但是在本文中,我们将…

pdf转ppt在线转换免费网页版

不知道大家有没有这样的经历,自己想PDF格式转为PPT,但是需要收费。很是苦恼,今天就分享一个我自己用过得免费的PDF转PPT的网站。 1,打开浏览器搜索界面,用“speedpdf在线转换”作为关键词进行搜索,找到并进…

JAVA实现把PPT转PDF的方法

文章目录 前言一、Apache poi是什么?二、具体实现1. 引入依赖2. ppt/pptx转换pdf (返回InputStream)3. ppt/pptx转换pdf (返回pdf文件) 前言 项目里前端想要上传的ppt转成pdf之后上传oss,好方便前端在页面中预览。找了好几个ppt转pdf的方案,…