Android提高 - 图片一些常用处理方法
来源:互联网 发布:js让一个按钮不可点击 编辑:程序博客网 时间:2024/06/05 06:48
1、图片加载方法,方便用户加载图片。这里需要提下,在获取图片的时候尽量使用写入流的方式获取图片,具体原因以后会介绍。
/*** * 加载本地图片 * * @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 * :图片 * @param 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();}
5、Android 图片透明度处理代码
/** * 图片透明度处理 * * @param sourceImg * 原始图片 * @param number * 透明度 * @return */public static Bitmap setAlpha(Bitmap sourceImg, int number) {int[] argb = new int[sourceImg.getWidth() * sourceImg.getHeight()];sourceImg.getPixels(argb, 0, sourceImg.getWidth(), 0, 0,sourceImg.getWidth(), sourceImg.getHeight());// 获得图片的ARGB值number = number * 255 / 100;for (int i = 0; i < argb.length; i++) {argb[i] = (number << 24) | (argb[i] & 0x00FFFFFF);// 修改最高2位的值}sourceImg = Bitmap.createBitmap(argb, sourceImg.getWidth(),sourceImg.getHeight(), Config.ARGB_8888);return sourceImg;}
6、图片翻转
/** * 图片翻转 * * @param context * @param imageId * 图片id * @return */public static Bitmap setRotate(Context context, int imageId) {Resources res = context.getResources();Bitmap img = BitmapFactory.decodeResource(res, imageId);Matrix matrix = new Matrix();matrix.postRotate(90); /* 翻转90度 */int width = img.getWidth();int height = img.getHeight();Bitmap result = Bitmap.createBitmap(img, 0, 0, width, height, matrix,true);img.recycle();return result;}
0 0
- Android提高 - 图片一些常用处理方法
- android 图片处理常用方法
- Android图片处理的的一些方法
- Android关于图片处理的一些方法
- Android图片处理的的一些方法 - ORIETech
- 图片处理的一些方法
- Android一些常用方法
- 图片处理的常用方法
- 图片处理常用方法总结
- android图片处理方法
- android图片处理方法
- android图片处理方法
- android图片处理方法
- android图片处理方法
- android图片处理方法
- android图片处理方法
- android图片处理方法
- android图片处理方法
- poj1010
- centos系统各个目录说明
- Unity3D研究院之IOS Android支持中文与本地文件的读取写
- Request和Response对象
- 关于《MAC和树莓派实现文件共享和TM备份》的二三事
- Android提高 - 图片一些常用处理方法
- C++标准库---容器作为形参?
- MariaDB 的主从复制以及建立主从复制后第一条语句就出错的原因
- mark hdu1501
- RFID系统安全隐患解决方案优缺点的分析
- MAC 连接 android 设备
- JavaScript实现数据验证
- Windows平台实现一种好看又好用的UI规划
- 申请TexturePacker免费注册码(TP:68D951F8)