手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >android 图片处理之制作圆角图片
android 图片处理之制作圆角图片
摘要:以下是改进一个前人做的圆角图片的例子,少创建一次bitmappublicstaticBitmaproundCorners(finalBitm...

以下是改进一个前人做的圆角图片的例子,少创建一次bitmap

public static Bitmap roundCorners(final Bitmap source, final float radius) {

int width = source.getWidth();

int height = source.getHeight();

Paint paint = new Paint();

paint.setAntiAlias(true);

paint.setColor(android.graphics.Color.WHITE);

Bitmap clipped = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

Canvas canvas = new Canvas(clipped);

canvas.drawRoundRect(new RectF(0, 0, width, height), radius, radius,

paint);

paint.setXfermode(new PorterDuffXfermode(android.graphics.PorterDuff.Mode.SRC_IN));

canvas.drawBitmap(source, 0, 0, paint);

source.recycle();

return clipped;

}

原例:

/**

* Round the corners of a {@link Bitmap}

*

* @param source

* @param radius

* @return rounded corner bitmap

*/

public static Bitmap roundCorners(final Bitmap source, final float radius) {

int width = source.getWidth();

int height = source.getHeight();

Paint paint = new Paint();

paint.setAntiAlias(true);

paint.setColor(WHITE);

Bitmap clipped = Bitmap.createBitmap(width, height, ARGB_8888);

Canvas canvas = new Canvas(clipped);

canvas.drawRoundRect(new RectF(0, 0, width, height), radius, radius,

paint);

paint.setXfermode(new PorterDuffXfermode(DST_IN));

Bitmap rounded = Bitmap.createBitmap(width, height, ARGB_8888);

canvas = new Canvas(rounded);

canvas.drawBitmap(source, 0, 0, null);

canvas.drawBitmap(clipped, 0, 0, paint);

source.recycle();

clipped.recycle();

return rounded;

}

【android 图片处理之制作圆角图片】相关文章:

Android 简单的照相机程序的实例代码

Android如何实现非本地图片的点击态

Android Tween动画之RotateAnimation实现图片不停旋转效果实例介绍

Android画图并保存图片的具体实现代码

android IntentService实现原理及内部代码分享

android图像绘制(二)画布上放大缩小问题

Android开发笔记 今天学到的一些属性

Android程序退出完美解决方案兼容所有SDK

Android利用方向传感器获得手机的相对角度实例说明

Android 开发环境配置问题

精品推荐
分类导航