ubuntu下PDF转图片--python

按照网上教程走了一遍坑,现记录如下:

 

环境配置:

一、安装ImageMagick

1、下载ImageMagick:ImageMagick-6.4.0.-0tar.gz 

http://downloads.jmagick.org/6.4.0/

 

2、解压并安装ImageMagick:

 

# tar xzvf ImageMagick-6.4.0-0.tar.gz

 

# cd ImageMagick-6.4.0

 

# ./configure

 

# make

 

# make install

 

# make check

 

安装完成后,运行convert -version命令检测,应该会出现:

 

Version: ImageMagick6.4.0 08/31/10 Q16 http://www.imagemagick.org

 

Copyright: Copyright(C) 1999-2008 ImageMagick Studio LLC

 

convert默认安装到了/usr/local/bin下面,上面的命令可能提示找不到convert命令。那么可以在/usr/bin下面创建一个到/usr/local/bin/convert的链接:

 

# cd /usr/bin

 

# ln -s/usr/local/bin/convert convert

 

# convert -version

 

3. 修改配置文件:

 

在/etc/profile中增加:

 

LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

 

exportLD_LIBRARY_PATH

 

在/etc/ld.so.conf中增加:/usr/local/lib

 

二、安装ghostscript

 

 

   ghostscript(以下简称gs)是Ubuntu系统下查看GMT生成的ps、eps格式图片文件的软件,利用源码安装的方式介绍如下:

     首先,要在Github上下载gs最新的源码,网站为:https://github.com/ArtifexSoftware/ghostpdl-downloads/releases

     下载好源码(本人下载的是ghostscript-9.19.tar.gz)之后,移动到/usr/src目录下;

  cd /usr/src

  tar zxvf ghostscript-9.23.tar.gz

   cd ghostscript-9.19

   ./configure

  mkdir obj

  mkdir bin

  make all

  sudo make install

注:./configure -- prefix/usr,会报如下错误:

make: *** No targets specified and no makefile found.Stop

三、安装wand

pip3 install wand

四、实现代码

 

#coding:utf-8
from wand.image import Image

# 将pdf文件转为jpg图片文件
# ./PDF_FILE_NAME 为pdf文件路径和名称
image_pdf = Image(filename='./PDF_FILE_NAME',resolution=300)
image_jpeg = image_pdf.convert('jpg')

# wand已经将PDF中所有的独立页面都转成了独立的二进制图像对象。我们可以遍历这个大对象,并把它们加入到req_image序列中去。
req_image = []
for img in image_jpeg.sequence:
    img_page = Image(image=img)
    req_image.append(img_page.make_blob('jpg'))

# 遍历req_image,保存为图片文件
i = 0
for img in req_image:
    ff = open(str(i)+'.jpg','wb')
    ff.write(img)
    ff.close()
    i += 1

 

 

注:

ghostscript-9.22-linux-x86_64.tgz,会报如下错误:

error reading a contentstream. the page may be incomplete

重装ghostscript-9.23.tar.gz

 

参考文章:

http://junyiseo.com/python/468.html

https://blog.csdn.net/seis_juch/article/details/71435954

https://www.linuxidc.com/Linux/2016-05/131331.htm

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值