public static Bitmap scaleWithWH(Bitmap src,
double w,
double h) {
if (w == 0 || h == 0 || src == null) {
return src;
} else {
// 记录src的宽高
int width = src.getWidth();
int height = src.getHeight();
// 创建一个matrix容器
Matrix matrix = new Matrix();
// 计算缩放比例
float scaleWidth = ( float) (w / width);
float scaleHeight = ( float) (h / height);
// 开始缩放
matrix.postScale(scaleWidth, scaleHeight);
// 创建缩放后的图片
return Bitmap. createBitmap(src, 0, 0, width, height, matrix, true);
}
if (w == 0 || h == 0 || src == null) {
return src;
} else {
// 记录src的宽高
int width = src.getWidth();
int height = src.getHeight();
// 创建一个matrix容器
Matrix matrix = new Matrix();
// 计算缩放比例
float scaleWidth = ( float) (w / width);
float scaleHeight = ( float) (h / height);
// 开始缩放
matrix.postScale(scaleWidth, scaleHeight);
// 创建缩放后的图片
return Bitmap. createBitmap(src, 0, 0, width, height, matrix, true);
}
}
//把资源文件中的图片缩小一半
private Bitmap getImage() {
BitmapFactory.Options newOpts = new BitmapFactory.Options();
newOpts. inJustDecodeBounds = false;
newOpts. inSampleSize = 2; //设置缩放比例
//重新读入图片,注意此时已经把options.inJustDecodeBounds 设回false了
Bitmap bitmap = BitmapFactory. decodeResource(getResources(), R.mipmap. mingchuseal, newOpts);
return bitmap; //压缩好比例大小后再进行质量压缩
}
private Bitmap getImage() {
BitmapFactory.Options newOpts = new BitmapFactory.Options();
newOpts. inJustDecodeBounds = false;
newOpts. inSampleSize = 2; //设置缩放比例
//重新读入图片,注意此时已经把options.inJustDecodeBounds 设回false了
Bitmap bitmap = BitmapFactory. decodeResource(getResources(), R.mipmap. mingchuseal, newOpts);
return bitmap; //压缩好比例大小后再进行质量压缩
}