【python】PDF转长图

PDF转化成长图

步骤:

复制代码
   pip install pdf2image
  1. 下载依赖文件poppler

  2. 上代码

    python 复制代码
    # 导入所需的库
    from PIL import Image
    import fitz
    from pdf2image import convert_from_path
    
    # 定义PDF文件路径、保存图像路径和Poppler路径
    pdf_file = r'D:\workspace\python学习笔记.pdf'
    save_path = r'D:\workspace\long_image.png'
    poppler_path = r"D:\app\poppler_2\bin"
    
    # 将PDF文件转换为图像列表
    image_list = convert_from_path(pdf_file, poppler_path=poppler_path)
    
    # 获取第一个图像的尺寸
    page_width, page_height = image_list[0].size
    
    # 创建一个与所有图像大小相同的画布
    merged_image = Image.new("RGB", (page_width, page_height * len(image_list)), (255, 255, 255))
    
    # 将所有图像粘贴到画布上
    for i, image in enumerate(image_list):
        merged_image.paste(image, (0, i * page_height))
    
    # 将画布保存为一张长图
    merged_image.save(save_path)
相关推荐
JAVA面经实录91710 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
贪玩的蛋挞11 小时前
C#与闭包
开发语言·c#
端庄的战斗机11 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme12 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
疋瓞13 小时前
python和C++对比(1)_数据类型和数据结构
数据结构·c++·python
C语言小火车13 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
北冥you鱼13 小时前
abigen 最佳实践:从入门到精通,高效生成 Go 语言合约绑定
开发语言·golang·区块链
ALex_zry14 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
如此这般英俊15 小时前
手搓Claude Code-第六章 subagent
数据结构·人工智能·python·语言模型·自然语言处理
她说..15 小时前
Java 默认值设置方式
java·开发语言·后端·springboot