본문 바로가기
Development/Android

[안드로이드] Android 뷰이미지 캡처

by 푸민 2015. 10. 1.
반응형


안녕하세요 푸민입니다.

안드로이드에서 화면을 캡쳐할 수 있는 기능이 있습니다!

각 뷰를 캡처하는 방식인데요.


캡처 이미지를 Bitmap 파일로 받아서 해당 파일을 저장합니다.


Bitmap bitmap = view.getDrawingCache();


Bitmap 객체를 정의하고, getDrawingCache() 메소드를 부르면 해당 뷰의 화면을 캡처하여 Bitmap 클래스로 반환합니다.


File file = new File(Environment.getExternalStorageDirectory(),"image.png");


File 객체를 생성하고 Environment 객체의 getExternalStorageDirectory() 를 사용하여 저장소 위치를 불러로고 저장할 이미지의 경로 및 이름을 파라미터로 전달해줍니다.


file.createNewFile();


파일을 생성해 줍니다.


OutputStream os = new FileOutputStream(file);


FileOutputStream 을 생성합니다.


bitmap.compress(Bitmap.CompressFormat.PNG, 100, os);


compress() 메소드를 호출하면 Bitmap 객체가 가지고 있는 이미지를 내보내줍니다. 파라미터로는 포맷 형식과 퀄리티, 내보내줄 Stream 이 들어갑니다. 


os.flush();

os.close();


그리고 항상 Stream 객체를 사용한 뒤에는 close() 를 호출해야합니다.

반응형

댓글