Android图片转换类 1. Bitmap去色,转换为黑白的灰度图, 2. Bitmap图片加圆角效果
2011-11-07 16:03
567 查看
/** * 处理图片的工具类. * */ public class ImageTools { /***//** * 图片去色,返回灰度图片 * @param bmpOriginal 传入的图片 * @return 去色后的图片 */ public static Bitmap toGrayscale(Bitmap bmpOriginal) { int width, height; height = bmpOriginal.getHeight(); width = bmpOriginal.getWidth(); Bitmap bmpGrayscale = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); Canvas c = new Canvas(bmpGrayscale); Paint paint = new Paint(); ColorMatrix cm = new ColorMatrix(); cm.setSaturation(0); ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm); paint.setColorFilter(f); c.drawBitmap(bmpOriginal, 0, 0, paint); return bmpGrayscale; } /***//** * 去色同时加圆角 * @param bmpOriginal 原图 * @param pixels 圆角弧度 * @return 修改后的图片 */ public static Bitmap toGrayscale(Bitmap bmpOriginal, int pixels) { return toRoundCorner(toGrayscale(bmpOriginal), pixels); } /***//** * 把图片变成圆角 * @param bitmap 需要修改的图片 * @param pixels 圆角的弧度 * @return 圆角图片 */ public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) { Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap .getHeight(), Config.ARGB_8888); Canvas canvas = new Canvas(output); final int color = 0xff424242; final Paint paint = new Paint(); final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()); final RectF rectF = new RectF(rect); final float roundPx = pixels; 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, rect, rect, paint); return output; } /***//** * 使圆角功能支持BitampDrawable * @param bitmapDrawable * @param pixels * @return */ public static BitmapDrawable toRoundCorner(BitmapDrawable bitmapDrawable, int pixels) { Bitmap bitmap = bitmapDrawable.getBitmap(); bitmapDrawable = new BitmapDrawable(toRoundCorner(bitmap, pixels)); return bitmapDrawable; } }
相关文章推荐
- Android图片转换类 1. Bitmap去色,转换为黑白的灰度图, 2. Bitmap图片加圆角效果
- Hello Android - Bitmap转换为黑白的灰度图和加圆角效果
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- [Android] bitmap/drawable/byte的转换和获取圆角/倒影图片
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- Android图片特效:黑白特效、圆角效果、高斯模糊
- WPF里使用FormatConvertedBitmap将图片转换成黑白图片
- css 图片变黑白效果 使用CSS将图片转换成黑白的
- python通过pil将图片转换成黑白效果的方法
- android 图片倒影 bitmap与drawable的转换 把图片处理成指定大小 图片圆角处理 dip转换成px
- Android图片特效:黑白特效、圆角效果、高斯模糊
- Android Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- Glide加载图片时转换为圆形、圆角、毛玻璃等图片效果
- [Android] bitmap/drawable/byte的转换和获取圆角/倒影图片
- Bitmap和Drawable的相互转换,图片缩放,倒圆角,倒影等的实现
- 【转载】使用CSS将图片转换成黑白(灰色、置灰)
- python实现基于两张图片生成圆角图标效果的方法