Imagick无法打开DNG图像

时间:2015-05-17 01:44:58

标签: php imagick

如您所见,图像_IGP4559.DNG存在,但Imagick无法打开它。 JPEG图像效果很好。
readImage()会返回相同的错误。

以下是图片:http://files.patrikelfstrom.se/_IGP4559.DNG

我在终端中运行此操作以排除所有其他变量。

$ ll /var/www/_IGP4559.DNG
-rw-rw-rw- 1 monsun monsun 11841201 May 17 03:37 /var/www/_IGP4559.DNG
$ php -a
Interactive mode enabled

php > new Imagick('/var/www/_IGP4559.DNG');
PHP Warning:  Uncaught exception 'ImagickException' with message 'unable to open image `/tmp/magick-29917oe6CM9MIkN8A.ppm': No such file or directory @ error/blob.c/OpenBlob/2709' in php shell code:1
Stack trace:
#0 php shell code(1): Imagick->__construct('/var/www/_IGP45...')
#1 {main}
  thrown in php shell code on line 1

imagic

1 个答案:

答案 0 :(得分:0)

ImageMagick使用其他程序读取一些图像格式,包括DNG。

可能发生的事情是ImageMagick希望能够用来读取DNG的程序在您的系统上不存在或者无法正常工作。

列出这些其他程序的文件名为delegates.xml

在我的系统上,DNG解码的条目是:

<delegate decode="dng:decode" command="&quot;ufraw-batch&quot; --silent --create-id=also --out-type=png --out-depth=16 &quot;--output=%u.png&quot; &quot;%i&quot;"/>

即。它试图使用程序'ufraw-batch'来进行解码,就像你看到它失败一样,因为该程序在我的系统上不可用。

要解决此问题,您需要安装ufraw,或者安装一个类似的软件包,它可以将文件从DNG格式转换为ImageMagick可以直接读取的标准格式。