图片内存大小计算

如题所述

第1个回答  2022-07-02

图片内存大小 图片文件占用空间大小 是没有必然关系,但是一般来说图片文件大小,图片内存大小就越大。占用空间是在磁盘上占用的空间,内存大小是加载到内存中占用的内存大小。

现在假如有一个图片是600*800的,文件大小100KB。

图片内存大小的计算公式是 : 图片高度 * 图片宽度 * 一个像素占用的字节数

也就是 600 * 800 * 4 byte = 1875KB = 1.83M

而一个像素占用的字节数与图片的编码格式(或者叫bitmap在内存中的存储形式)有关

自然是位数越多显示的效果越好

在Android中,图片的存放目录和手机的屏幕密度影响图片最终的大小,举个例子:

假设我们的图片放到xhdpi目录下,那么我们本文中的图片占用的内存大小如下:

屏幕密度为2的设备:800 * 600 * 4byte = 1.83M

屏幕密度为3的设备:800 * 1.5 * 600 * 1.5 * 4byte = 1.83 * 2.25M = 4.12M

所以,计算图片占用内存大小的时候,要考虑图片所在的目录跟设备密度,这两个因素其实影响的是图片的高宽,android会对图片进行拉升跟压缩。

相似回答