此图像格式“PNG”没有解码委托

no decode delegate for this image format `PNG'

我正在编写一个 django/python 应用程序,我需要将用户上传的 PDF 文件转换为 JPEG(文件是扫描件)

我正在尝试使用 wand 和 ImageMagick 后端(在 OSX 上)和 我不断收到以下错误:

MissingDelegateError at /user_docs/upload/certificate/
no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501

我目前的测试代码很简单:

with wandImage(filename='/Users/username/Pictures/telechargement.pdf') as img:
    img.format = 'jpeg'
    img.save(filename='/Users/username/Pictures/bzzz.jpeg')

一些信息:

  1. 文件存在(我用os.path.exists验证)
  2. 我可以在命令行中使用 convert
  3. 将文件从 PDF 转换为 JPG
  4. 我尝试设置 DYLD_LIBRARY_PATH 以包含 ImageMagick 库目录
  5. identify -list configure | grep DELEGATES returns

DELEGATES bzlib fftw fontconfig freetype gs jpeg jng lcms2 lzma mpeg png tiff x11 xml zlib

有人有想法吗?

谢谢

好的,找到了!与往常一样,关键是 RTFM:

http://docs.wand-py.org/en/0.4.0/guide/install.html#install-imagemagick-on-mac

我错过了:

$ export MAGICK_HOME=/opt/local