py
from pdf2image import convert_from_path
from pptx import Presentation
from pptx.util import Inches
import os
# 用户输入PDF文件路径
pdf_file_path = input("请输入PDF文件的路径:")
# 提取文件名(不包括扩展名)作为PPT文件名称
ppt_file_name = os.path.splitext(os.path.basename(pdf_file_path))[0]
# 1. 打开PDF文件并将其转换为图像
images = convert_from_path(pdf_file_path)
# 2. 创建一个PPT
ppt = Presentation()
# 3. 获取PPT页面的尺寸
slide_width = ppt.slide_width
slide_height = ppt.slide_height
# 4. 逐页处理图像转换和PPT创建
for i, image in enumerate(images):
image_path = f'page_{i + 1}.jpg'
image.save(image_path)
slide = ppt.slides.add_slide(ppt.slide_layouts[5])
left = 0
top = 0
width = slide_width
height = slide_height
# 添加图像并调整其大小以适应整个页面
pic = slide.shapes.add_picture(image_path, left, top, width, height)
# 删除临时图像文件
os.remove(image_path)
# 5. 保存PPT文件
ppt_file = f'{ppt_file_name}.pptx'
ppt.save(ppt_file)
print(f"PPT文件已保存为 {ppt_file}")
python pdf转换为PPT代码