在我的虚拟主机中,我不能使用 shell,那么这个命令有什么替代方法吗?
system("convert $src +dither -layers optimize -depth 16 -colors 32 $dest");
我想压缩 gif 文件,所以我需要保留动画。
PS:
当然,我首先尝试自己做。但没有成功。所以我写了这个问题。
例子:
$im = new Imagick("first.gif");
$im->optimizeImageLayers();
$im->writeImages("phpmodul.gif", true);
system("convert first.gif -layers optimize shell.gif");
- 第一个.gif - 649 KB
- phpmodul.gif - 647 KB
- 外壳.gif - 347 KB
有什么帮助吗?
PP:
我解决了这个问题。我的解决方案。
$animation = new Imagick("$file");
foreach ($animation as $frame) {
$frame->quantizeImage(32, imagick::COLORSPACE_RGB, 16, FALSE, TRUE);
}
$animation = $animation->optimizeImageLayers();
$animation->writeImages("$file", true);