我面临着这个奇怪的问题,我试图通过MagickReadImageBlob读取WebP图像的blob,在下一行中,我只是尝试使用MagickGetImageBlob获取相同的blob。因此,我的最终斑点大小奇怪地减小了。那么,谁能解释这种行为呢?
我正在使用版本:ImageMagick 6.9.8-10 Q16 x86_64 on ubuntu 16.04
那么,谁能解释这种行为呢?
MagickReadImageBlob
将图像文件缓冲区解码为经过身份验证的像素栅格。
MagickGetImageBlob
将栅格编码回图像文件缓冲区。
WebP 格式可以是有损的,也可以是无损的,也可以在编码过程中实现不同的压缩技术。编码例程很可能只是找到了另一种存储栅格的方法,而不是前一种方式。您的 ImageMagick 版本的量子深度为 16 (Q16),因此 WebP 的 24 位颜色 + 8 位 alpha 到 Q16 的解码/缩放可能会影响某些编码变化。尝试设置MagickSetImageDepth(wand, 8)
,看看是否有帮助。