什么是" colorspace"在imagedata?

时间:2017-04-24 07:49:34

标签: javascript html5-canvas getimagedata putimagedata

需要做一些像素操作,但imagedata已经改变。现在它有一个" colorspace"属性。 这是什么,以及如何正常使用它?

只需在chrome中获取一个imagedata对象即可重现。

1 个答案:

答案 0 :(得分:6)

这来自this proposal以在画布中实现色彩空间管理。

目前,画布卡住了legacy-srgb 8位深度。有些监视器无法处理这种低级别的信息。

这仍然是一个提案,但目前提出的设置2DContext的colorSpace的语法是ctx.getContext('2d', {colorSpace: 'color-space', pixelFormat: 'pixelFormat', linearPixelMath: boolean});

目前,还没有人实施过,但铬和铬正在这样做 他们当前的实现只暴露了ImageData对象上的getter colorSpace属性,以及Context2D对象上的getContextAttributes方法,但还没有办法为我们设置它(也许有一些启动标志) ,但我没有找到它。)

注意:您需要在Experimental canvas features中将chrome://flags标记设置为true才能访问这些属性。

但无论如何,这个属性决不会改变你的代码。 ImageData的所有默认参数仍然相同。