1

我有以下问题:

我在<img>网站上的元素中有图片。它们都在 srgb 颜色空间中,这些信息都包含在它们中。
它们看起来就像在 Safari、Chrome 和 Firefox 中一样。
然后我使用drawImage(imageObject). 这些图像看起来与<img>chrome 和 firefox 中的 -elements 中的图像完全一样(据我所知,这是 w3c 的预期行为)。
但是,canvas-element 中的这些图像在 safari 中看起来不同!从我发现的情况来看,颜色空间似乎正在被丢弃/忽略,因此颜色的变化非常糟糕。

我在 OSX 10.8.2 上使用 Safari 6.0.2

对于这种不良行为,是否有任何已知的解决方法?

谢谢!

4

1 回答 1

1

规范说:

画布 API 必须仅在两点执行颜色校正:在将具有自己的伽马校正和颜色空间信息的图像渲染到画布上时,将图像转换为画布使用的颜色空间(例如,使用 2D 上下文的 drawImage() 方法使用 HTMLImageElement 对象),以及在将实际画布位图渲染到输出设备时。

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#color-spaces-and-color-correction

那么这是一个Safari错误。

我不相信有解决方法,除非您通过实现自己的过滤器手动调整像素颜色以匹配 Safari 中的颜色空间。

于 2012-11-16T00:16:06.077 回答