我是CPAN模块Image :: Hash的作者。它是一个用于进行图像散列的模块,使用GD,Image :: Magick或Imager处理图像,具体取决于用户系统上安装的内容。
我测试是否通过将它包装在这样的eval中来安装Image :: Magick:
eval { require Image::Magick};
如果安装了Image :: Magick,模块将使用它。
这一直很好用,但最近我从CPAN测试人员那里得到了两个错误报告,其中我的模块因错误“Image :: Magick :: Q16 :: constant not defined”而失败。< / p>
Dos这意味着您可以安装Image :: Magick,但仍然没有工作环境,因为缺少Image :: Magick :: Q16?
我该如何处理?
我不想添加Image :: Magick :: Q16:作为每个人的要求,因为除了两个平台外,它没有它就能正常工作。
CPAN测试人员报告:
图像散列-0.06:
x86_64-linux-thread-multi / 5.18.1:
失败http://www.cpantesters.org/cpan/report/822fb984-965b-11e5-8cc0-4f581fbf4db7
图像散列-0.06:
i486-linux-thread-multi / 5.18.1:
失败http://www.cpantesters.org/cpan/report/1a701ba4-97fa-11e5-975f-b301d0c0c177
只是为了澄清;根据CPAN测试人员的说法,我的模块可以在215个平台上运行,并且在2.平台上失败。所以这不是常见错误。我目前无法轻松访问带有perl 5.18.1的计算机。
答案 0 :(得分:0)
Dos这意味着您可以安装Image :: Magick,但仍然没有工作环境,因为缺少Image :: Magick :: Q16?
正确。量子常数是在ImageMagick库的编译期间定义的。引用PerlMagicks Overview document。
PerlMagick是量子意识到的。您可以在实例化图像对象时请求特定的量子深度:
use Image::Magick::Q16; $image = Image::Magick::Q16->new;
我不熟悉Perl,但我可以看到特定的量子常数为defined here。
package Image::Magick::@MAGICK_ABI_SUFFIX@;
@MAGICK_ABI_SUFFIX@
可能会影响--with-quantum-depth
和--enable-hdri
Image::Magick::Q8
。见Advanced Unix Installation
所以以下包可能有效......
Image::Magick::Q16
Image::Magick::Q32
HDRI
或许后缀为a:hover:after
。