首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

圆形裁剪图片的代码小弟我该如何加啊有代码~

2013-11-12 
圆形裁剪图片的代码我该怎么加啊????有代码~!所有方法如上面三个图,圆形裁剪的代码如下:public Bitmap toR

圆形裁剪图片的代码我该怎么加啊????有代码~!
圆形裁剪图片的代码小弟我该如何加啊有代码~
圆形裁剪图片的代码小弟我该如何加啊有代码~
圆形裁剪图片的代码小弟我该如何加啊有代码~
所有方法如上面三个图,圆形裁剪的代码如下:
public Bitmap toRoundBitmap(Bitmap bitmap) {                 
int width = bitmap.getWidth();                
 int height = bitmap.getHeight();                 
float roundPx;                 
float left,top,right,bottom,dst_left,dst_top,dst_right,dst_bottom;                 
if (width <= height) {                         
roundPx = width / 2;                         
top = 0;                         
bottom = width;                         
left = 0;                         
right = width;                         
height = width;                         
dst_left = 0;                         
dst_top = 0;                         
dst_right = width;                         
dst_bottom = width;                 } else {                         
roundPx = height / 2;                        
 float clip = (width - height) / 2;                         
left = clip;                         
right = width - clip;                        
 top = 0;                        
 bottom = height;                         
width = height;                        
 dst_left = 0;                         
dst_top = 0;                         
dst_right = height;                        
 dst_bottom = height;                 }                                   
Bitmap output = Bitmap.createBitmap(width,                                 
height, Config.ARGB_8888);                
 Canvas canvas = new Canvas(output);                                  
 final int color = 0xff424242;                 


final Paint paint = new Paint();                
 final Rect src = new Rect((int)left, (int)top, (int)right, (int)bottom);                
 final Rect dst = new Rect((int)dst_left, (int)dst_top, (int)dst_right, (int)dst_bottom);                 final RectF rectF = new RectF(dst);                  
 paint.setAntiAlias(true);                                  
 canvas.drawARGB(0, 0, 0, 0);                 
paint.setColor(color);                 
canvas.drawRoundRect(rectF, roundPx, roundPx, paint);                   
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));                 canvas.drawBitmap(bitmap, src, dst, paint);                 
return output;        
 }

代码应该不需要多写多少, 关键我是搞不太清楚“逻辑”的关系,,
大神么给破一下~!! 圆形图片
[解决办法]

引用:
toRoundBitmap()这段代码呢  写哪里?

跟doDisplay这个函数一样,作为一个函数加到这个类里面就行了。

热点排行