Я довольно долго искал решение этой проблемы и пока не нашел ничего, что соответствовало бы моим потребностям.
Я хочу масштабировать растровое изображение до определенного размера, сохраняя при этом соотношение сторон. Думайте об этом как о масштабировании растрового изображения с помощью fitCenter в ImageView, только в новом растровом изображении.
Исходное растровое изображение должно соответствовать растровому изображению назначения, которое имеет определенный размер, а остальные пиксели должны быть прозрачными.
Я пробовал использовать Glide вот так:
Glide.with(context).load(url)
.asBitmap()
.override(1280, 720)
.fitCenter()
.into(1280, 720)
.get();
Но этот метод возвращает растровое изображение, которое соответствует только ширине (или высоте), и обертывает размер.
Я слышал, что использование Canvas - возможное решение, но не нашел способа достичь своей цели с его помощью.
Приветствуется любая помощь или понимание. Если потребуется, я опубликую все необходимые разъяснения.