android图像处理系列之二--图片旋转、缩放、反转
16lz
2021-01-24
转自:http://blog.csdn.net/maylian7700/article/details/7071837
注意是反转,不是翻转。贴图:
原图:
处理后:
下面看代码:
package com.jacp.image.util;import android.graphics.Bitmap;import android.graphics.Matrix;/** * 图片处理 * * @author [email protected] * */public class ImageHandler {/** * 图片旋转 * * @param bmp * 要旋转的图片 * @param degree * 图片旋转的角度,负值为逆时针旋转,正值为顺时针旋转 * @return */public static Bitmap rotateBitmap(Bitmap bmp, float degree) {Matrix matrix = new Matrix();matrix.postRotate(degree);return Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), matrix, true);}/** * 图片缩放 * * @param bm * @param scale * 值小于则为缩小,否则为放大 * @return */public static Bitmap resizeBitmap(Bitmap bm, float scale) {Matrix matrix = new Matrix();matrix.postScale(scale, scale);return Bitmap.createBitmap(bm, 0, 0, bm.getWidth(), bm.getHeight(), matrix, true);}/** * 图片缩放 * * @param bm * @param w * 缩小或放大成的宽 * @param h * 缩小或放大成的高 * @return */public static Bitmap resizeBitmap(Bitmap bm, int w, int h) {Bitmap BitmapOrg = bm;int width = BitmapOrg.getWidth();int height = BitmapOrg.getHeight();float scaleWidth = ((float) w) / width;float scaleHeight = ((float) h) / height;Matrix matrix = new Matrix();matrix.postScale(scaleWidth, scaleHeight);return Bitmap.createBitmap(BitmapOrg, 0, 0, width, height, matrix, true);}/** * 图片反转 * * @param bm * @param flag * 0为水平反转,1为垂直反转 * @return */public static Bitmap reverseBitmap(Bitmap bmp, int flag) {float[] floats = null;switch (flag) {case 0: // 水平反转floats = new float[] { -1f, 0f, 0f, 0f, 1f, 0f, 0f, 0f, 1f };break;case 1: // 垂直反转floats = new float[] { 1f, 0f, 0f, 0f, -1f, 0f, 0f, 0f, 1f };break;}if (floats != null) {Matrix matrix = new Matrix();matrix.setValues(floats);return Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), matrix, true);}return null;}}
更多相关文章
- Android:ScaleGestureDetector 缩放手势检测
- Android屏幕100%适配方案
- Android(安卓)选取图片、手机拍照以及保存图片到本地、读取图片
- Android(安卓)播放本地视频的动态权限问题
- layui 上传图片 移动端 调用相机
- android 动态改变图片大小
- android 开发 获取各种intent (图片、apk文件、excel、pdf等文件)
- android camer 图片回显界面照片分享到微博、人人、彩信、蓝牙的
- Android(安卓)ImageView 的 scaleType 属性