PHP ImageMagick 7.0 缺少一些方法
PHP ImageMagick 7.0 lacks some Methods
场景如下,在我的本地机器上 Ubuntu 18 和旧版本的 Imagick 我是 运行 以下小脚本:
<?php
$imageX = new Imagick();
print_r( $imageX::getVersion() );
echo "<pre>";print_r(get_class_methods($imageX));
结果:
数组 ( [versionNumber] => 1687 [versionString] => ImageMagick 6.9.7-4 Q16 x86_64 20170114 )
数组
(
[0] => optimizeimagelayers -> 有 371 个方法
)
现在,因为我想要一些特殊功能,但我发现它们不在我的 Amazon AMI 服务器上,所以我在远程测试中安装了最新版本:
slosarek.eu /api/web-image/imagick.php
Array ( [versionNumber] => 1800 [versionString] => ImageMagick 7.0.8-7 Q16 x86_64 2018-07-23)
数组
(
[0] => optimizeimagelayers -> 341 方法
)
与 6.9.7-4 相比,新版本还缺少大约 30 种方法。例如:
orderedPosterizeImage() 不存在
DITHER 也没有(我正在尝试将一些灰度图片转换为 1 位以在 Eink 中显示内容)
我肯定漏掉了什么! PHP 版本是 PHP 7.0.30
我很想知道这里的问题是什么,或者只是新版本的 Imagick 的方法较少而我只是错过了新闻。
这些功能已从 IM6 中删除/未从 IM6 移植到 ImageMagick 7。您还可以看到 PHP imagick 模块的注释 about being deprecated in the PHP7 build:
3.4.3RC1
- Fixes:
* Imagick::transformImage and Imagick::orderedPosterizeImage now correctly excluded from
IM7 build.
场景如下,在我的本地机器上 Ubuntu 18 和旧版本的 Imagick 我是 运行 以下小脚本:
<?php
$imageX = new Imagick();
print_r( $imageX::getVersion() );
echo "<pre>";print_r(get_class_methods($imageX));
结果: 数组 ( [versionNumber] => 1687 [versionString] => ImageMagick 6.9.7-4 Q16 x86_64 20170114 )
数组 ( [0] => optimizeimagelayers -> 有 371 个方法 )
现在,因为我想要一些特殊功能,但我发现它们不在我的 Amazon AMI 服务器上,所以我在远程测试中安装了最新版本: slosarek.eu /api/web-image/imagick.php
Array ( [versionNumber] => 1800 [versionString] => ImageMagick 7.0.8-7 Q16 x86_64 2018-07-23)
数组 ( [0] => optimizeimagelayers -> 341 方法 )
与 6.9.7-4 相比,新版本还缺少大约 30 种方法。例如: orderedPosterizeImage() 不存在 DITHER 也没有(我正在尝试将一些灰度图片转换为 1 位以在 Eink 中显示内容)
我肯定漏掉了什么! PHP 版本是 PHP 7.0.30
我很想知道这里的问题是什么,或者只是新版本的 Imagick 的方法较少而我只是错过了新闻。
这些功能已从 IM6 中删除/未从 IM6 移植到 ImageMagick 7。您还可以看到 PHP imagick 模块的注释 about being deprecated in the PHP7 build:
3.4.3RC1 - Fixes: * Imagick::transformImage and Imagick::orderedPosterizeImage now correctly excluded from IM7 build.