Prueba esto:
public static Bitmap getResizedBitmap(Bitmap bm, int newHeight, int newWidth) {
int width = bm.getWidth();
int height = bm.getHeight();
float scaleWidth = ((float) newWidth)/width;
float scaleHeight = ((float) newHeight)/height;
// CREATE A MATRIX FOR THE MANIPULATION
Matrix matrix = new Matrix();
// RESIZE THE BIT MAP
matrix.postScale(scaleWidth, scaleHeight);
// RECREATE THE NEW BITMAP
Bitmap resizedBitmap = Bitmap.createBitmap(bm, 0, 0, width, height,
matrix, false);
return resizedBitmap;
}
Fácil de usar:
Bitmap bmResized=getResizedBitmap(yourBitmap,newHeight,newWidth);
y le entregan su imagen redimensionada
Nota: Si desea cambiar el tamaño de la imagen Utilice esta Recursos para convertir a mapa de bits:
Bitmap bmOrginal=BitmapFactory.decodeResource(this.getResources(), R.drawble.yourRes);
Bitmap bmResized=getResizedBitmap(bmOrginal,newHeight,newWidth);
asentando después la imagen redimensionada:
image.setImageBitmap(bmResized);
Debe hacer una imagen en miniatura del tamaño 300x300 pero conservando su relación de aspecto. Puede dibujar imágenes más grandes en un lienzo centrado con un poco de color llenando el resto del espacio. –