android图片处理方法(不断收集中…
来源:互联网 发布:网络电视需要什么 编辑:程序博客网 时间:2024/06/04 18:18
Android 中图片处理方法技巧大汇总,几乎涵盖了所有的图片处理方法!
http://gundumw100.iteye.com/blog/849729
http://www.cnblogs.com/lbangel/p/3612588.html
再奉上一个自己整理的图片处理工具类,里边都是静态方法,可以直接调用就好:
package com.lyc.image.tools;
public class ImageTools {
publicstatic Bitmap toGrayscale(Bitmap bmpOriginal) {
int width,height;
height =bmpOriginal.getHeight();
width =bmpOriginal.getWidth();
BitmapbmpGrayscale = Bitmap.createBitmap(width, height,
Bitmap.Config.RGB_565);
Canvas c =new Canvas(bmpGrayscale);
Paint paint= new Paint();
ColorMatrixcm = new ColorMatrix();
cm.setSaturation(0);
ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
paint.setColorFilter(f);
c.drawBitmap(bmpOriginal, 0, 0, paint);
returnbmpGrayscale;
}
publicstatic Bitmap toGrayscale(Bitmap bmpOriginal, int pixels) {
returntoRoundCorner(toGrayscale(bmpOriginal), pixels);
}
publicstatic Bitmap toRoundCorner(Bitmap bitmap, int pixels) {
Bitmapoutput = Bitmap.createBitmap(bitmap.getWidth(),
bitmap.getHeight(), Config.ARGB_8888);
Canvascanvas = new Canvas(output);
final intcolor = 0xff424242;
final Paintpaint = new Paint();
final Rectrect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
final RectFrectF = new RectF(rect);
final floatroundPx = 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);
returnoutput;
}
publicstatic BitmapDrawable toRoundCorner(BitmapDrawablebitmapDrawable,
int pixels){
Bitmapbitmap = bitmapDrawable.getBitmap();
bitmapDrawable = new BitmapDrawable(toRoundCorner(bitmap,pixels));
returnbitmapDrawable;
http://gundumw100.iteye.com/blog/849729
http://www.cnblogs.com/lbangel/p/3612588.html
再奉上一个自己整理的图片处理工具类,里边都是静态方法,可以直接调用就好:
package com.lyc.image.tools;
public class ImageTools {