我注意到一些非常奇怪的事情。 Python的Pillow,Firefox的CanvasRenderingContext2D.drawImage()
和Photoshop CC都以不同的方式解释JPEG。我的意思是一些像素在颜色值上变化非常轻微。例如,根据Pillow,183, 214
处的像素可能具有颜色(207, 019, 036)
,根据Firefox的JavaScript实现,(207, 018, 036)
可能具有(207, 018, 038)
,而根据Photoshop,<br>
可能具有white-space: pre;
white-space: pre-line;
。它们的差异很小(我测试的512x512图像只有5个像素不同),但它们就在那里。
所以我想知道的是, JPEG是否有100%规范的栅格表示?是否存在每个JPEG的客观“正确”光栅版本,遵循规范?还是有余地?是否存在有效的边缘情况,其中值取决于舍入(或类似的东西)?