아래는 Drawable 객체를 Bitmap 객체로 변환하는 방법이다.
Drawable d; // 특정 값 대입
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGV_8888);
Canvas canvas = new Canvas(bitmap);
d.setBounds(0, 0, width, height);
d.draw(canvas);
|
그럼 이 소스를 이용하여 작성된 코드를 살펴 보자.
=> 이 코드에는 ImageView 2개가 있다.
1) original_iv는 Drawble\icon.png를 이미지로 설정하였다. [setImageResource( ) 활용]
2) copy_iv에서는 original_iv의 Drawable 값을 Bitmap 객체로 변화하여, 이를 이미지로 설정하였다.
[setImageBitmap( ) 활용]
실행 화면을 살펴 보면, 아래와 같다.
상단의 이미지가 원본, 하단의 이미지가 Bitmap으로 변환된 것을 표시한 것이다.
실행된 화면
|
1. 상단의 그림은 Drawable\icon.png를 직접 설정해서 표시한 것.
2. 하단의 그림은 상단 이미지의 Drawble 값을 Bitmap 객체로 변환하여 표시한 것
|