RoundedBitmapDrawable 을 사용 하여 원 각 그림 을 만 드 는 방법


Bitmap src = BitmapFactory.decodeResource(getResources(), imageId); //  Bitmap  
RoundedBitmapDrawable roundedBitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), src); //  RoundedBitmapDrawable  
roundedBitmapDrawable.setCornerRadius(100); //      (      )
roundedBitmapDrawable.setAntiAlias(true); //     
image.setImageDrawable(roundedBitmapDrawable); //       
동태
원형 그림 생 성
RoundedBitmapDrawable 류 는 원형 그림 을 만 드 는 방법 을 직접 제공 하지 않 기 때문에 원형 그림 을 만 들 려 면 먼저 원본 그림 을 재단 하고 그림 을 정사각형 으로 재단 한 다음 에 원형 그림 을 생 성하 여 다음 과 같이 구체 적 으로 실현 해 야 합 니 다.

Bitmap src = BitmapFactory.decodeResource(getResources(), imageId);
Bitmap dst;
//              
if (src.getWidth() >= src.getHeight()){
dst = Bitmap.createBitmap(src, src.getWidth()/2 - src.getHeight()/2, 0, src.getHeight(), src.getHeight()
);
}else{
dst = Bitmap.createBitmap(src, 0, src.getHeight()/2 - src.getWidth()/2, src.getWidth(), src.getWidth()
);
}
RoundedBitmapDrawable roundedBitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), dst);
roundedBitmapDrawable.setCornerRadius(dst.getWidth() / 2); //               
roundedBitmapDrawable.setAntiAlias(true);
image.setImageDrawable(roundedBitmapDrawable);
위 에서 말 한 것 은 편집장 님 께 서 소개 해 주신 Rounded BitmapDrawable 을 사용 하여 원 각 그림 을 만 드 는 방법 입 니 다.도움 이 되 셨 으 면 좋 겠 습 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.편집장 님 께 서 바로 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기