#pdf #image #image-conversion #conversion #poppler #convert #pdf2img

pdf2image

Python的pdf2image的简化版本,将pdftoppm和pdftocairo包装起来以将PDF转换为图像

3个版本

0.1.2 2024年5月7日
0.1.1 2024年5月7日
0.1.0 2024年5月7日

#290 in 图像

Download history 304/week @ 2024-05-06 23/week @ 2024-05-20 9/week @ 2024-06-10 18/week @ 2024-07-29 8/week @ 2024-08-05 52/week @ 2024-08-12

78 每月下载次数
用于 gpt4ocr

MIT 许可证

19KB
358

pdf2image

Python的pdf2image的简化版本,将pdftoppmpdftocairo(poppler的一部分poppler)包装起来以将PDF转换为image::DynamicImage

安装

将以下命令添加到您的项目中:cargo add pdf2image

pdf2image需要安装poppler

Windows

Windows用户将需要为Windows构建或下载poppler。Python的pdf2image维护者推荐@oschwartz10612版本。然后您需要将bin/文件夹添加到PATH或使用环境变量PDF2IMAGE_POPPLER_PATH

macOS

使用homebrew

brew安装poppler

Linux

大多数发行版都自带pdftoppmpdftocairo。如果未安装,请参考您的包管理器以安装poppler-utils

平台无关(使用conda

  1. 安装popplerconda install -c conda-forge poppler
  2. 安装pdf2imagepip install pdf2image

快速入门

use pdf2image::{PDF2ImageError, RenderOptionsBuilder, PDF};

fn main() -> Result<(), PDF2ImageError> {
    let pdf = PDF::from_file("examples/pdfs/ropes.pdf").unwrap();
    let pages = pdf.render(
        pdf2image::Pages::Range(1..=8),
        RenderOptionsBuilder::default().build()?,
    );
    println!("{:?}", pages.unwrap().len());

    Ok(())
}

变更日志

  • 审查了所有 .unwrap() 的出现,将不必要的部分重构为返回错误,并添加了注释详细说明为什么可以安全调用(感谢 @qarmin!)。

许可证

pdf2image 包含从 Edouard Belvalpdf2image Python 模块中提取的代码,该模块采用 MIT 许可证。同样,pdf2image 也采用 MIT 许可证。

依赖项

~4.5MB
~84K SLoC