将 PDF 转换为图像,无需非 python 依赖项

2024-03-04

我想创建一个可以部署到其他计算机上的exe。该程序需要能够读取 pdf 并将其转换为图像,但我不希望其他用户必须下载依赖项。

我的理解是 py2image 和 wand 都需要外部依赖项,如果您转换为 exe,其他用户也需要自己下载依赖项。

还有其他可用选项/解决方法吗?


我找不到解决方案,显然无论如何都需要一个 PDF 渲染器。最轻量级的解决方案是https://pymupdf.readthedocs.io/en/latest/intro.html https://pymupdf.readthedocs.io/en/latest/intro.html。它仍然是 PDF 渲染器的 python 绑定(https://www.mupdf.com/ https://www.mupdf.com/),但您可以通过以下方式安装它,包括其依赖项:

pip install PyMuPDF

无需安装 poppler 或 imagemagick。

然后您可以将 pdf 转换为图像,如下所示:

import fitz  

doc = fitz.open(stream=your_pdf_file_stream, filetype="pdf")  
for idx, page in enumerate(doc):  
    pix = page.get_pixmap(dpi=600) 
    the_page_bytes=pix.pil_tobytes(format="PNG")
    with open("page-%s.png"%idx, "wb") as outf:
        outf.write(the_page_bytes)

不幸的是,mupdf 有 Copyleft 许可证,所以请记住这一点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 PDF 转换为图像,无需非 python 依赖项 的相关文章

随机推荐