What I don't get here then is: Why does the pixels data have a Bitmap struct contained, when there's a Bitmap struct allocated explicitly for storing the pixels? I mean couldn't all the data apart from the pixels be stored in the latter? Thus, still looks crazy to me.