public static int[] getScaleSizeByWidth(final Context ctx,final Bitmap bitmap,final int wid){
Bitmap bm = bitmap;
if(bm!=null){
int viewWeight = wid;
float width = bm.getWidth();
float height = bm.getHeight();
float percente = (float)(width / 100);
float scale = (float)(viewWeight / percente);
width *= (scale / 100);
height *= (scale / 100);
//bm.recycle();
int[] i = new int[2];
i[0] = (int)width;
i[1] = (int)height;
return i;
}else{
int[] i = new int[2];
i[0] = 0;
i[1] = 0;
return i;
}
}
위의 메서드를 사용하여 비트맵 이미지를 가로/세로 비율을 유지한채 늘이거나 줄일수가 있다
즉 이미지가 깨지는? 현상을 없앨수 있다.
public static int convertToPx(Context ctx, int dp) {
final float scale = ctx.getResources().getDisplayMetrics().density;
return (int)(dp*scale+0.5f);
}
그리고 이건 dp값을 pixel값으로 변환해주는 메서드 이다
'android' 카테고리의 다른 글
[Android] HttpUrlConnection 사용하기 (0) | 2016.02.24 |
---|---|
[Android] 구글클라우드 프린터 이용 프린팅하기 (0) | 2016.02.23 |
[Android] Timer / TimerTask 사용하기 (0) | 2015.07.06 |
[Android] 현재시간에서 특정날까지의 차이 구하기 (0) | 2015.07.06 |
[ANDROID] 다른앱 설치 되있는지 확인 / 다른앱 실행하기 (0) | 2015.05.29 |