createImageData与createImageDataHD

时间:2013-01-03 14:15:06

标签: html5-canvas

createImageData和createImageDataHD有什么区别?非HD版本的The official specification读取:

  

返回具有给定尺寸的ImageData对象。返回对象中的所有像素都是透明黑色。

对于高清版本:

  

返回一个ImageData对象,其尺寸等于参数中给出的尺寸,乘以画布位图中与每个坐标空间单位对应的像素数。返回的对象中的所有像素均为透明的黑色。

你能告诉我他们的意思是什么,高清版的用例是什么?

1 个答案:

答案 0 :(得分:2)

用例适用于Retina显示屏等更高分辨率的屏幕。

虽然这样的显示器具有更多的字面像素,但是由于CSS像素的可变性,在这样的系统上显示的浏览器仍然表现得像具有正常的分辨率一样;见CSS's discussion of pixels and anchor units here

  

对于较低分辨率的设备和具有不寻常观看距离的设备,建议使用锚单元作为像素单元。对于这样的设备,建议像素单元参考最接近参考像素的设备像素的整数。 [ 即,让像素为普通设备上的像素。 ]

     

对于打印介质和类似的高分辨率设备,锚单元应该是标准物理单位之一(英寸,厘米等)。 [ 即,假设高分辨率设备上的像素为96 dpi。 ]

这很重要,因为视网膜屏幕上的显示像素密度加倍并不会导致每个网站的宽度增加一半,高一半。

画布规范的pixel manipulation routines假设一个CSS像素等于底层位图中的一个像素,但这无法利用更高分辨率的屏幕。