使用Picasso实现图片圆角和图片圆形
作者很好的文章访问量缺很少也很难搜到(我这里插个眼以后用的到)
作者:先知丨先觉
来源:CSDN
原文:https://blog.csdn.net/github_33304260/article/details/52033539
(图片圆角做的不是很好我试了试)
导入依赖
compile 'com.squareup.picasso:picasso:2.5.2'
代码使用
Picasso.with(Activity.this).load(URL).transform(new CircleCornerForm()).error(R.drawable.head).into(ImageView);
加载圆形图片
import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
import android.graphics.Paint;import com.squareup.picasso.Transformation;/*** Created libin on 2016/4/25.* 圆形图片*/
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";}
}
加载圆角图片
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
import android.graphics.RectF;import com.squareup.picasso.Transformation;/*** Created by libin on 16/7/22.* 圆角切片*/
public class CircleCornerForm implements Transformation {@Overridepublic Bitmap transform(Bitmap source) {int widthLight = source.getWidth();int heightLight = source.getHeight();Bitmap output = Bitmap.createBitmap(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);Canvas canvas = new Canvas(output);Paint paintColor = new Paint();paintColor.setFlags(Paint.ANTI_ALIAS_FLAG);RectF rectF = new RectF(new Rect(0, 0, widthLight, heightLight));canvas.drawRoundRect(rectF, widthLight / 5, heightLight / 5, paintColor);//这里除的数越大角度越小Paint paintImage = new Paint();paintImage.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_ATOP));canvas.drawBitmap(source, 0, 0, paintImage);source.recycle();return output;}@Overridepublic String key() {return "roundcorner";}
}
转载于:https://www.cnblogs.com/xuexidememeda/p/10329643.html
使用Picasso实现图片圆角和图片圆形相关推荐
- [Android] 给图像加入相框、圆形圆角显示图片、图像合成知识
前一篇文章讲述了Android触屏setOnTouchListener实现突破缩放.移动.绘制和加入水印,继续我的"随手拍"项目完毕给图片加入相框.圆形圆角显示图片和图像合 ...
- [Android] 给图像添加相框、圆形圆角显示图片、图像合成知识
前一篇文章讲述了Android触屏setOnTouchListener实现突破缩放.移动.绘制和添加水印,继续我的"随手拍"项目完成给图片添加相框.圆形圆角显示图片和图像合 ...
- 使用Glide加载圆角矩形图片、圆形图片
Glide是一个功能强大的图片加载库,下面是平常开发中使用到的一些功能,基于Glide-4.X版本的用法 Glide-github地址 Glide jar包下载地址 加载圆形图片: RequestOp ...
- Glide加载常用类型图片(带白色边框的圆形图、圆角矩形图片、圆形图片)
一:依赖包: Glide_github implementation 'com.github.bumptech.glide:glide:4.8.0' annotationProcessor 'com. ...
- android圆角glide,使用Glide加载圆角矩形图片、圆形图片
Glide是一个功能强大的图片加载库,下面是平常开发中使用到的一些功能,基于Glide-4.X版本的用法 Glide-github地址 Glide jar包下载地址 加载圆形图片:RequestOpt ...
- 用JAVA awt实现Image Asset Studio生成圆形或圆角矩形图片功能
背景 随着Android 7.1推出Round Icon Resources功能(不了解的,可以看Android开发者官网这篇文章Android 7.1 for Developers),圆形Icon应 ...
- Picasso加载圆角图片
Picasso.with(context).load(url).transform(new RoundTransform(20)).into(iv_show); /** * 圆角显示图片-Picas ...
- Android给图像添加相框、圆形圆角显示图片、图像合成知识
前一篇文章讲述了Android触屏setOnTouchListener实现突破缩放.移动.绘制和添加水印,继续我的"随手拍"项目完成给图片添加相框.圆形圆角显示图片和图像合成的功能 ...
- 给图像添加相框、圆形圆角显示图片、图像合成知识
前一篇文章讲述了Android触屏setOnTouchListener实现突破缩放.移动.绘制和添加水印,继续我的"随手拍"项目完成给图片添加相框.圆形圆角显示图片和图像合成的功能 ...
最新文章
- 实战:动手搭建一个开源动作相机
- 典型的开发国内小项目没失败的经验分享
- oracle处理回车换行符
- android startanimation 回调,ScheduledThreadPoolExecutor执行莫名停止问题Android几个动画回调运行线程...
- 刹车八个技巧 教你踩得又稳又好
- 微信WeixinJSBridge API
- java泛型与接口_Java泛型用于方法,类和接口
- Android笔记 fragment的生命周期
- keras笔记-模型保存以及tensorboard的使用
- 搭建 Apache Jmeter 分布式压测与监控
- P3435 [POI2006]OKR-Periods of Words
- linux命令行删除N天前的数据的命令
- android 15 activity跳转
- jspstudy启动mysql失败_JspStudy配置Jspxcms安装教程,以及数据库设置;
- 通俗易懂的粒子滤波算法(PF)
- JS动态添加元素绑定点击事件,触发事件多次执行问题?
- ms project2010项目管理软件使用技巧总结
- Pimple Containter 容器使用实例代码
- Python环境下用中文做了个《王者荣耀》AI脚本,附视频
- GSR2501国产2.4G PA替代RFX2401C,AT2401C,RT201