0
我想將Bitmap
的實例轉換爲ByteArray
的實例,以便能夠將它傳遞給Webservice。如何在不使用壓縮的情況下將位圖轉換爲ByteArray?
現在,我在做什麼是:
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.JPEG, 100, bos);
byte[] imageData = bos.toByteArray();
ByteArrayBody byteArrayBody = new ByteArrayBody(imageData, imagePath);
這裏的問題是,我使用的壓縮,使之發生,這導致降低位圖的品質。
有沒有其他方法可以做到這一點?
謝謝!
編輯: 我無法壓縮到PNG
,因爲服務器使用JPEG
。
對不起,我應該提到我真的需要保持JPEG格式,因爲這是服務器使用的格式。 – 2011-12-16 09:09:19
然後,您可以通過從JPEG編碼器請求最高質量來盡你所能。如果您必須發送JPEG,那麼根據定義,您正在丟失一些信息 - 但最高質量的JPEG損失很少。 – 2011-12-16 10:01:27