你有没有遇到过需要pdf转图片的时候,然而一堆的pdf工具都需要开会员收费,为了一两张图片开会员又感觉不值当,网上能搜到一些免费的在线小工具包,但是又怕信息泄露。
今天就分享一个使用python将pdf转为图片的工具包-pdfplumber:
具体如何使用,很简单的一个小函数,输入pdf文件就能将每一页pdf转成你想要的任何分辨率的任何格式的图片,关键是对页数和分辨率都没限制,自己笔记本运行也没啥信息泄露风险。
代码:
import pdfplumber
def pdf2image(inpdf, outpath):
##获取文件名
filename = os.path.basename(inpdf).split(".pdf")[0]
##如果输出目录不存在,则新建文件夹
if not os.path.exists(outpath):
os.mkdir(outpath)
##一页pdf生成一张图片
with pdfplumber.open(inpdf) as pdf:
for i, page in enumerate(pdf.pages):
##图片分辨率设置
im = page.to_image(resolution=300)
##保存生成的图片:图片文件名为pdf文件名+页码,png后缀也可该改为其它图片格式,如jpg
im.save("%s/%s-%d.png"%(outpath, filename, i+1))
return
if __name__ == "__main__":
inpdf = "./Test.pdf"
outpath = "./Test"
##运行函数
pdf2image(inpdf, outpath)
随便找了一个pdf文档(文件名为Test.pdf,一共三页)测试了一下,生成结果如下:
image.png验证了一下图片的分辨率,正好是300dpi:
image.png
你看看是不是又省钱了。。python果真是万能的。
网友评论