/** * resize图片.创建固定宽度的新图片<br /> * 缩小 * * @param src * @param dstWidth * @return Bitmap */ public Bitmap createBitmap(Bitmap src, int dstWidth) throws Exception {
Bitmap ret = null;
int srcWidth = src.getWidth();
int srcHeight = src.getHeight();
float ratio = ((float) dstWidth) / srcWidth;
if (ratio >= 1)
return src;
int dstHeight = (int) (srcHeight * ratio);
ret = Bitmap.createScaledBitmap(src, dstWidth, dstHeight, false);
// return return ret;
}
/** * resize图片.创建固定宽度高度的新图片<br /> * 先缩小后剪切 * * @param src * @param dstWidth * @param dstHeight * @return Bitmap */ public Bitmap createBitmap(Bitmap src, int dstWidth, int dstHeight) {
Bitmap ret = null;
int srcWidth = src.getWidth();
int srcHeight = src.getHeight();
float ratioX = ((float) dstWidth) / srcWidth;
float ratioY = ((float) dstHeight) / srcHeight;
float ratio = ratioX > ratioY ? ratioX : ratioY;
int orgWidth = (int) (srcWidth * ratio);
int orgHeight = (int) (srcHeight * ratio);
// 缩小 Bitmap org = Bitmap.createScaledBitmap(src, orgWidth, orgHeight, false);
// 剪切 ret = Bitmap.createBitmap(org, 0, 0, dstWidth > orgWidth ? orgWidth : dstWidth,
dstHeight > orgHeight ? orgHeight : dstHeight);
// return return ret;
}
转载于:https://my.oschina.net/quifar/blog/840206