Img.src它是如何存储在内存中的?

时间:2012-12-12 20:56:23

标签: javascript html

我想知道image.src以及它是如何存储在浏览器中的。

它是否存储准备在屏幕上显示的像素数组?然后,这让我想知道为什么我们不能访问这个像素数据without绘图到画布并获取像素信息?

图像数据必须存储在浏览器的内存中,为什么我们不能直接查询图像的像素而不是先绘制它?

3 个答案:

答案 0 :(得分:2)

没有标准来定义浏览器如何维护图像,并且因为浏览器是专门设计的,不允许你进行内部实现,所以你真的无法做你要求的...

答案 1 :(得分:1)

实际上,浏览器如何将图像存储在内存中与您(Web开发人员)无关。这是一个实现细节。这就像询问操作系统内核如何决定在RAM中分配程序存储器的位置 - 对于大多数应用程序来说,它无关紧要;内核只是给你记忆。

唯一重要的是提供给您的公开记录的API。对于DOM API,获取像素数据的方法是通过canvas API。

答案 2 :(得分:0)

历史原因。图像元素最初设计用于显示图像。 canvas元素是在几年后添加的,它允许开发人员访问图像和其他媒体对象中的数据。

在更高级别,如果您对浏览器实施其图像标记的内部管道感兴趣,则Firefox和Chrome的源代码可供检查。