本文实例讲述了Android图片处理的方法。分享给大家供大家参考,具体如下:
package cn.szbw.util;import Android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.Matrix;import android.graphics.Paint;public class Utils { /*** * 加载本地图片 * @param context:主运行函数实例 * @param bitAdress:图片地址,一般指向R下的drawable目录 * @return */public final Bitmap CreatImage(Context context, int bitAdress) {Bitmap bitmaptemp = null;bitmaptemp = BitmapFactory.decodeResource(context.getResources(),bitAdress);return bitmaptemp;}//2.图片平均分割方法,将大图平均分割为N行N列,方便用户使用/*** * 图片分割 * @param g * :画布 * @param paint *:画笔 * @param imgBit *:图片 x *:X轴起点坐标 * @param y *:Y轴起点坐标 * @param w * :单一图片的宽度 * @param h *:单一图片的高度 * @param line *:第几列 * @param row * :第几行 */public final void cuteImage(Canvas g, Paint paint, Bitmap imgBit, int x,int y, int w, int h, int line, int row) {g.clipRect(x, y, x + w, h + y);g.drawBitmap(imgBit, x - line * w, y - row * h, paint);g.restore();}//3.图片缩放,对当前图片进行缩放处理/*** * 图片的缩放方法 * * @param bgimage *:源图片资源 * @param newWidth *:缩放后宽度 * @param newHeight *:缩放后高度 * @return */public Bitmap zoomImage(Bitmap bgimage, int newWidth, int newHeight) {// 获取这个图片的宽和高int width = bgimage.getWidth();int height = bgimage.getHeight();// 创建操作图片用的matrix对象Matrix matrix = new Matrix();// 计算缩放率,新尺寸除原始尺寸float scaleWidth = ((float) newWidth) / width;float scaleHeight = ((float) newHeight) / height;// 缩放图片动作matrix.postScale(scaleWidth, scaleHeight);Bitmap bitmap = Bitmap.createBitmap(bgimage, 0, 0, width, height,matrix, true);return bitmap;}//4.绘制带有边框的文字,一般在游戏中起文字的美化作用/** * 绘制带有边框的文字 * @param strMsg * :绘制内容 * @param g *:画布 * @param paint *:画笔 * @param setx *:X轴起始坐标 * @param sety *:Y轴的起始坐标 * @param fg *:前景色 * @param bg * :背景色 */public void drawText(String strMsg, Canvas g, Paint paint, int setx,int sety, int fg, int bg) {paint.setColor(bg);g.drawText(strMsg, setx + 1, sety, paint);g.drawText(strMsg, setx, sety - 1, paint);g.drawText(strMsg, setx, sety + 1, paint);g.drawText(strMsg, setx - 1, sety, paint);paint.setColor(fg);g.drawText(strMsg, setx, sety, paint);g.restore();}}
更多关于Android相关内容感兴趣的读者可查看本站专题:《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》
希望本文所述对大家Android程序设计有所帮助。