Bitmap.compress возвращает false для нарисованного изображения

У меня есть код, в котором пользователь что-то рисует на экране, и я хочу сохранить это как PNG в байтах []. Однако метод compress () возвращает false. Есть идеи, почему это так? Есть ли лучший способ получить байт []?

Bitmap bm = Bitmap.createBitmap(mWidth, mHeight, Bitmap.Config.ALPHA_8);
Canvas c = new Canvas(bm);
c.drawPath(mSignaturePath, mSignaturePaint);
ByteArrayOutputStream out = new ByteArrayOutputStream();
if (bm.compress(Bitmap.CompressFormat.PNG, 100, out)) {
    byte[] result = out.toByteArray(); // Never gets called
}

Заранее спасибо.

7
задан Shawn Lauzon 19 May 2011 в 19:18
поделиться