我曾尝试使用 php 来计算图像的平均颜色。所以我使用php函数:imagecolorat()
,imagecreatefromstring()
这是我的代码的一部分:
$fcontents = file_get_contents($imgname);
$im = @imagecreatefromstring($fcontents);
但是我发现它可以成功读取图像,除了 .ico 怎么处理呢?
我曾尝试使用 php 来计算图像的平均颜色。所以我使用php函数:imagecolorat()
,imagecreatefromstring()
这是我的代码的一部分:
$fcontents = file_get_contents($imgname);
$im = @imagecreatefromstring($fcontents);
但是我发现它可以成功读取图像,除了 .ico 怎么处理呢?
试试https://github.com/lordelph/icofileloader
$loader = new Elphin\IcoFileLoader\IcoFileService;
$im = $loader->extractIcon('/path/to/icon.ico', 32, 32);
//$im is a GD image resource, so we could, for example, save this as a PNG
imagepng($im, '/path/to/output.png');
函数 imagecreatefromstring() 不适用于 .ico - 格式:imagecreatefromstring() 返回表示从给定图像获得的图像的图像标识符。如果您的 PHP 版本支持这些类型,则会自动检测到这些类型:JPEG、PNG、GIF、WBMP 和 GD2。
显然,可以使用此类
http://www.phpclasses.org/package/2369-PHP-Extract-graphics-from-ico-files-into-PNG-images.html