Я создаю приложение для загрузки изображений из галереи, пока оно хорошо работает для некоторых изображений, но некоторые изображения я получаю сообщение «Растровое изображение слишком большое, чтобы быть загруженным в текстуру (2988x5312 , max = 4096x4096) "изображение слишком большое для отображения
вот код для отображения растрового изображения.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && data != null && data.getData() != null)
{
Uri filePath = data.getData();
try {
bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), filePath);
Picasso.with(MainActivity.this).load(filePath).error(R.drawable.smile).into(imageView1);
} catch (IOException e)
{
e.printStackTrace();
}
}
}
что я могу сделать, чтобы исправить это? изменить размер изображения? или проверить, слишком ли велико изображение? и какова резолюция, приемлемая для изображений здесь?
изменить размер изображения, которое даст меньше памяти, а также не даст вам ошибку bitmapoutofmemory в вашем проекте. Если вы перемасштабируете его с сохранением пропорций, он не будет выглядеть размытым. –