有谁知道当前画布像素数据规范在各种浏览器中可以追溯到多远?如果“没那么远”,之前的规格是什么?
当你调用或推送像素时,你得到/发送:
ImageData
data: Uint8ClampedArray
width: Number
height: Number
但我知道它曾经只是:
{
data: Array
width: Number
height: Number
}
所以如果我是生成ImageData,如何检测我需要生成什么?是ImageData && Uint8ClampedArray
充足的?我呢?立即地回落到Object / Array
, 或者是其他东西?难道在某个时候没有像素阵列吗?
[编辑] caniuse 说 IE10 和 Opera Mini 不支持 Uint8ClampedArray,所以...?
打电话时ctx.getImageData()
, 规格要求 UserAgent 返回一个类型数组而不指定哪种类型。支撑对于 TypedArray 从 IE10 开始。但是,就像在 IE9 中一样,ImageData对象是一个CanvasPixelArray
,它没有可用的构造函数方法。
但无论如何,最好的和IMK获取所需的正确 ArrayBuffer 的唯一跨浏览器方法ImageData
对象,就是调用ctx.createImageData(width,height).
然后你就可以得到它的data
数组并且您确定它的类型是正确的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)