您的位置:首页 > 移动开发 > Android开发

android 修改图片的宽高

2016-05-26 11:57 399 查看
需求:开发中服务器端要求把获取到的图片压缩处理,转化为指定的宽和高,例如:需要上传宽100,高200的图片

在android2.2提供了一个API可以直接实现

[java]

Bitmap resizeBmp = ThumbnailUtils.extractThumbnail(bmp, 100, 200);

但是因为项目需求需要兼容2.2一下的版本,这时需要另外一种方式,使用Bitmap.createBitmap方法生成指定宽高的图片

[html]

/**

* 处理图片

* @param bm 所要转换的bitmap

* @param newWidth新的宽

* @param newHeight新的高

* @return 指定宽高的bitmap

*/

public static Bitmap zoomImg(Bitmap bm, int newWidth ,int newHeight){

// 获得图片的宽高

int width = bm.getWidth();

int height = bm.getHeight();

// 计算缩放比例

float scaleWidth = ((float) newWidth) / width;

float scaleHeight = ((float) newHeight) / height;

// 取得想要缩放的matrix参数

Matrix matrix = new Matrix();

matrix.postScale(scaleWidth, scaleHeight);

// 得到新的图片 www.2cto.com

Bitmap newbm = Bitmap.createBitmap(bm, 0, 0, width, height, matrix, true);

return newbm;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: