我想知道image.src
它是如何存储在浏览器中的。
它是否存储了准备在屏幕上显示的像素数组?然后这让我想知道为什么我们不能将这个像素数据without
绘图访问到画布并以这种方式获取像素信息?
图像数据必须存储在内存中供浏览器使用,为什么不能直接查询图像的某个像素,而只能先绘制呢?
我想知道image.src
它是如何存储在浏览器中的。
它是否存储了准备在屏幕上显示的像素数组?然后这让我想知道为什么我们不能将这个像素数据without
绘图访问到画布并以这种方式获取像素信息?
图像数据必须存储在内存中供浏览器使用,为什么不能直接查询图像的某个像素,而只能先绘制呢?
没有标准来定义浏览器如何维护图像,并且由于浏览器的设计目的是不允许您了解其内部实现,因此您真的无法按照您的要求进行操作......
实际上,浏览器如何在内存中存储图像与 Web 开发人员无关。这是一个实现细节。这就像询问操作系统内核如何决定它在 RAM 中的哪个位置分配程序内存——对于大多数应用程序来说,这根本不重要;内核只是给你内存。
唯一重要的是提供给您的公开记录的 API。对于 DOM API,获取像素数据的方法是通过画布 API。
历史原因。图像元素最初设计只是为了显示图像。多年后添加了 canvas 元素,以使开发人员能够访问图像和其他媒体对象中的数据。
在更高的层次上,如果您对浏览器如何实现其图像标签的内部管道感兴趣,Firefox 和 Chrome 的源代码是开放的以供检查。