Новичок в адроидинге.
Задача такова: взять изображение по uri, ресайзить его до разумных разделов, и отправить на сервер.
Наткнулся на такой момент, что мета информация теряется при ресайзе (ну или где-то около) . посмотрите плиз более опытные товарищи, в чем косяк?
is = cr.openInputStream(uri);
Bitmap bm = BitmapFactory.decodeStream(is);
bm = scaleImage(bm, 2000, false);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG, 100, stream);
byteArray = stream.toByteArray();
// Потом прикрепляю этот массив к AsyncHttpClient
params.put("image", new ByteArrayInputStream(byteArray));
Далее функция с просторов, она должна ресайзить изображение
public static Bitmap scaleImage(Bitmap realImage, float maxImageSize,
boolean filter) {
float ratio = Math.min(
(float) maxImageSize / realImage.getWidth(),
(float) maxImageSize / realImage.getHeight());
int width = Math.round((float) ratio * realImage.getWidth());
int height = Math.round((float) ratio * realImage.getHeight());
Bitmap newBitmap = Bitmap.createScaledBitmap(realImage, width,
height, filter);
return newBitmap;
}
Но на сервер приходит файл без мета информации. Гугл информации не дает. Ткните носом плиз, где теряется мета информация?