Как я могу вырезать прямоугольное изображение (600 x 300) слева и справа, чтобы поместиться в квадрат ImageView? Я не хочу изменять размер изображения, я просто хочу обрезать его, чтобы он составлял 300 х 300.
[РЕШЕНИЕ]
Как сказал @blackbelt
Bitmap cropImg = Bitmap.createBitmap(src, startX, startY, dstWidth, dstHeight);
отлично подходит для обрезки изображений. Итак, как вы можете автоматически обрезать изображения разных размеров. Я создаю для этого простой код:
// From drawable
Bitmap src= BitmapFactory.decodeResource(context.getResources(), R.drawable.image);
// From URL
Bitmap src = null;
try {
String URL = "http://www.example.com/image.jpg";
InputStream in = new java.net.URL(URL).openStream();
src = BitmapFactory.decodeStream(in);
} catch (Exception e) {
e.printStackTrace();
}
int width = src.getWidth();
int height = src.getHeight();
int crop = (width - height) / 2;
Bitmap cropImg = Bitmap.createBitmap(src, crop, 0, height, height);
ImageView.setImageBitmap(cropImg);