2012-10-06 65 views
8

我需要创建PDF文件的缩略图,我使用Imagemagick来实现这一点。Python Magickwand pdf到图像转换和图像大小调整

我已经尝试Pythonmagick和魔杖将PDF转换为图像。但是,当我尝试调整转换的PDF大小时,生成的图像变黑。

是否有任何选项使用python包装设置-define pdf:use-cropbox=true

Python中是否有任何其他方法将PDF转换为缩略图?

的代码如下:

import wand 
    img = wand.image.Image(filename="d:\\test.pdf[0]") 
    img.resize(160,160) 
    img.save(filename="d:\\test.jpg") 

回答

5

我找到了工作围绕这个问题。 将pdf转换为图像1st并保存图像。打开新保存的图像并调整大小。

import wand 
img = wand.image.Image(filename="d:\\test.pdf[0]") 
img.save(filename="d:\\temp.jpg") 
img = wand.image.Image(filename="d:\\temp.jpg") 
img.resize(160,160) 
img.save(filename="d:\\resized_image.jpg") 

我还在等待更好的答案。

+0

我会建议中间保存到“d:\\ temp.jpg”使用无损格式,以便不引入任何额外的压缩失真到最终图像。 – awatts

0

你可以不使用临时文件 - 如果你不依赖于JPG。

对我来说,以下工作:

import wand 
img=wand.image.Image(filename="/home/vagrant/tmp/wand/law.pdf[0]") 
img.format='png' 
img.resize(220,220) 
img.save(filename="/home/vagrant/tmp/wand/law_2.png")