我尝试使用Imagick::quantizeImage
将300,000彩色PNG图像减少到100,000,但是变成大约65,000彩色。
您不能获得超过65,000种颜色吗?
PHP版本:7.1.27
imagick模块版本:3.4.3
参考:https://www.php.net/manual/en/imagick.quantizeimage.php
我尝试将$colorspace
和$treedepth
的各种值作为参数,但最多只能有65,000种颜色。
$img = new \Imagick('/path/to/300000-colors-image.png');
$img->quantizeImage(100000, \Imagick::COLORSPACE_SRGB, 0, false, false);
$img->writeImage('/path/to/result.png');
$img->clear();
$img->destroy();
// Confirm the result
$img = new \Imagick('/path/to/result.png');
// Expected: 100,000
// Actual: 65,000
echo $img->getImageColors();
$img->clear();
$img->destroy();
答案 0 :(得分:0)