반응형
[안드로이드] 비트맵 비율 맞추면서 크기 줄이기 (썸네일) thumbnail 만들기
안드로이드에서 이미지 파일을 표시할때나,다룰때 파일 크기가 너무 커면 느려진다거나, 스크롤이 버벅이는등의 현상이 일어납니다.
크기가 작은 이미지 파일을 생성함으로써, 위의 문제를 어느정도 해결할 수 있습니다.
안드로이드 개발 - 비트맵(Bitmap) 비율 맞추면서 크기 줄이기(썸네일 생성)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | // Bitmap to File //bitmap에는 비트맵, strFilePath에 는 파일을 저장할 경로, strFilePath 에는 파일 이름을 할당해주면 됩니다. public static void createThumbnail(Bitmap bitmap, String strFilePath, String filename) { File file = new File(strFilePath); // If no folders if (!file.exists()) { file.mkdirs(); // Toast.makeText(this, "Success", Toast.LENGTH_SHORT).show(); } File fileCacheItem = new File(strFilePath + filename); OutputStream out = null ; try { int height=bitmap.getHeight(); int width=bitmap.getWidth(); fileCacheItem.createNewFile(); out = new FileOutputStream(fileCacheItem); //160 부분을 자신이 원하는 크기로 변경할 수 있습니다. bitmap = Bitmap.createScaledBitmap(bitmap, 160 , height/(width/ 160 ), true ); bitmap.compress(CompressFormat.JPEG, 100 , out); } catch (Exception e) { e.printStackTrace(); } finally { try { out.close(); } catch (Exception e) { e.printStackTrace(); } } } |
위의 방법으로 하면 자신이 원하는 경로에 썸네일 파일을 생성할 수 있습니다.
Sdcard 경로에 저장하는 경우에는 아래 권한을 할당해 주어야 합니다.
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
[ 출처 : http://jhrun.tistory.com/170 ]
반응형
'IT > 안드로이드+JAVA' 카테고리의 다른 글
[안드로이드] 스피너 텍스트 색 (Spinner Text Color) (0) | 2016.11.09 |
---|---|
[안드로이드] 미디어 스캐닝, 사진 찍은 후 갤러리에 안나오는 현상 (0) | 2016.10.23 |
[안드로이드스튜디오] no debuggable applications 해결방법 android studio (0) | 2016.10.21 |
[안드로이드] 스와이프 뷰페이저 swipe viewpager (0) | 2016.10.21 |
[안드로이드] InputStream, OutputStream으로 파일 이동하기 (0) | 2016.10.17 |