반응형

 

byte[]에서 Bitmap으로 변환후 가로길이가 세로길이보다 클 경우 Bitmap 이미지를 회전시킨다.

Bitmap bitmap = byteArrayToBitmap(data);
if (bitmap.getHeight() < bitmap.getWidth()){
bitmap = imgRotate(bitmap, 90);
}
imgView.setImageBitmap(bitmap);
 
 
//byte[] bitmap으로 변환
private Bitmap byteArrayToBitmap(byte[] byteArray){
Bitmap bitmap = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
return bitmap;
}

//bitmap이미지를 원하는각으로 회전
private Bitmap imgRotate(Bitmap bitmap, int angle){
int width = bitmap.getWidth();
int height = bitmap.getHeight();

Matrix matrix = new Matrix();
matrix.postRotate(angle);

Bitmap resizedBitmap = Bitmap.createBitmap(bitmap, 0, 0, width, height, matrix, true);
bitmap.recycle();

return resizedBitmap;
}
 
반응형

WRITTEN BY
아카이시

,