Picasso创建圆形图像

来源:互联网 发布:小强呼死你软件安卓版 编辑:程序博客网 时间:2024/05/20 16:46
public class CircleTransform implements Transformation {@Overridepublic Bitmap transform(Bitmap source) {int size = Math.min(source.getWidth(), source.getHeight()); int x = (source.getWidth() - size) / 2;int y = (source.getHeight() - size) / 2; Bitmap squaredBitmap = Bitmap.createBitmap(source, x, y, size, size);if (squaredBitmap != source) {source.recycle();} Bitmap bitmap = Bitmap.createBitmap(size, size, source.getConfig()); Canvas canvas = new Canvas(bitmap);Paint paint = new Paint();BitmapShader shader = new BitmapShader(squaredBitmap,BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP);paint.setShader(shader);paint.setAntiAlias(true); float r = size / 2f;canvas.drawCircle(r, r, r, paint); squaredBitmap.recycle();return bitmap;} @Overridepublic String key() {return "circle";}}Picasso.with(activity).load(mayorShipImageLink).transform(new CircleTransform()).into(ImageView);


0 0
原创粉丝点击