我将大小为5.8 KB的图像文件下载到我的Android App的ImageView中。我使用bitmap.compress()方法将图像保存到我的应用程序目录中。因为我想知道我下载的图像的大小,我使用Bitmap.getByteCount()来获取图像的大小。
以下是代码:
但是,对于实际大小仅为5.8 KB的图像,我的大小为201.984 KB。
谁能说我有什么不对?
Thaadvance!
答案 0 :(得分:1)
但是我的大小为201.984 KB
Bitmap
是解码图像。 getByteCount()
返回解码图像的内存大小。
表示实际大小仅为5.8 KB的图像
您认为"实际尺寸"似乎是磁盘上的压缩大小。这与内存中解码图像的大小不同,也不应该如此。
答案 1 :(得分:0)
位图和其他格式差异。
示例位图ARGB_8888 每个像素包含alpha,red,green,blue通道。并且比每个更改大小8位。(0
示例:
宽度= 50px 高度= 50px 格式= ARGB_8888 大小= 50 x 50 x 32位(4字节)= 2500 x 4 = 10000字节