您在 ImageView (android) 中加载图像,如何为其分配内存?
分配的内存是一维数组还是二维数组?(也许就像素而言)
哪个是更好的 BufferedImage 或 Bitmap 用于图像处理?
PS - 它不是这个的副本。
您在 ImageView (android) 中加载图像,如何为其分配内存?
分配的内存是一维数组还是二维数组?(也许就像素而言)
哪个是更好的 BufferedImage 或 Bitmap 用于图像处理?
PS - 它不是这个的副本。
AnImageView
不会为它显示的图像分配内存,图像会这样做。很可能是一个Bitmap
。并且那些在本机上下文(一些malloc
)中分配内存,因此 Java 的垃圾收集器无法清理分配的内存,如果您不小心,它会经常失败。
分配的内存是一维内存块,可能逐像素逐行存储(2D 访问是一个简单的计算)。图像未压缩存储,因此 100kb .jpg 文件可能使用数 MB 的数据。每个像素最多占用 4 个字节(_8888 模式下的 R、G、B、A)
的实际实现(分配)Bitmap
应该在skia - SkBitmap的某个地方。
我不知道 aBufferedImage
是什么,但是关于使用图像的好读物是:
http://developer.android.com/training/displaying-bitmaps/index.html