需要进行一些像素操作,但图像数据已更改。现在它有一个“色彩空间”属性。这是什么,我该如何正常使用它?
只需在 chrome 中获取一个 imagedata 对象即可重现。
需要进行一些像素操作,但图像数据已更改。现在它有一个“色彩空间”属性。这是什么,我该如何正常使用它?
只需在 chrome 中获取一个 imagedata 对象即可重现。
这来自这个在画布中实现色彩空间管理的提议。
目前,画布被困在legacy-srgb
8 位深度。一些监视器无法处理这种低级别的信息。
这仍然是一个提议,但当前提议的设置 2DContext 的 colorSpace 的语法是ctx.getContext('2d', {colorSpace: 'color-space', pixelFormat: 'pixelFormat', linearPixelMath: boolean});
目前,还没有人实现它,但铬和铬正在这样做。
他们当前的实现只在 ImageData 对象上公开了一个 gettercolorSpace
属性,getContextAttributes
在 Context2D 对象上公开了一个方法,但是还没有一种方法可以为我们设置它(也许有一些启动标志,但我没有找到它)。
注意:您需要将Experimental canvas features
标志设置为 truechrome://flags
才能访问这些属性。
但无论如何,这个属性不应该改变你的代码。ImageData 的所有默认参数仍然相同。