魔杖:这种图像格式没有解码代表`'

时间:2017-01-09 08:21:37

标签: python imagemagick imagemagick-convert wand

我使用Wand将第一页从PDF files转换为jpg files,然后将一些进程应用于另一个脚本。

我的问题是:从昨天开始,我收到了这个错误,但我没有得到任何解决方案。我试图重新安装imagemagick但没有效果。

这是回溯消息:

Traceback (most recent call last):
  File "conversion.py", line 9, in <module>
    convert = Image(filename="/Users/valentinjungbluth/Desktop/NAPS_PDF/" + PDF)  
  File "/usr/local/lib/python2.7/site-packages/wand/image.py", line 2744, in __init__
    self.read(filename=filename, resolution=resolution)
  File "/usr/local/lib/python2.7/site-packages/wand/image.py", line 2822, in read
    self.raise_exception()
  File "/usr/local/lib/python2.7/site-packages/wand/resource.py", line 222, in raise_exception
    raise e
wand.exceptions.MissingDelegateError: no decode delegate for this image format `' @ error/constitute.c/ReadImage/504
Exception TypeError: TypeError("object of type 'NoneType' has no len()",) in <bound method Image.__del__ of <wand.image.Image: (empty)>> ignored

你对这个问题有所了解吗?

这是我的脚本,可以将PDF转换为JPG:

#-*- coding: utf-8 -*-

from wand.image import Image
import os


for PDF in os.listdir ("/Users/valentinjungbluth/Desktop/NAPS_PDF/") : #boucle sur tous les PDF du dossier

        convert = Image(filename="/Users/valentinjungbluth/Desktop/NAPS_PDF/" + PDF)  
        name = PDF.split('.') #Récupération du nom
        page = len(convert.sequence)

        if page == 1 :  #Nombre de page = 1
                convert.compression_quality = 100 #Qualité en %
                convert.save(filename="/Users/valentinjungbluth/Desktop/PDF_to_JPG/" + name[0] + ".jpg") #Enregistrement en JPEG sous la forme nom.jpg

        elif page > 1 : #Nombre de page > 1

                for frame in convert.sequence : #Pour chaque page 
                        img_page = Image(image=frame)
                        img_page.compression_quality = 100 #Qualité en %
                        img_page.save(filename="/Users/valentinjungbluth/Desktop/PDF_to_JPG/" + name[0] + ".jpg") #Enregistrement en JPEG sous la forme nom.jpg
                        break

非常感谢

编辑:

它适用于这个简单的脚本:

#-*- coding: utf-8 -*-

from wand.image import Image
import os

with Image(filename="/Users/valentinjungbluth/Desktop/NAPS_PDF/arrow.pdf", resolution=200) as convert : 

        convert.compression_quality = 150 #Qualité en %
        convert.save(filename="/Users/valentinjungbluth/Desktop/PDF_to_JPG/test.jpg") #Enregistrement en JPEG sous la forme nom.jpg

解决方案:

在MacOSX上,我有一个名为.DS_Store的文件 我必须删除它或只是删除.pdf文件!我的错误来自这个.DS_Store文件!

0 个答案:

没有答案