Я хочу масштабировать System.Drawing.Bitmap
как минимум до некоторой фиксированной ширины и высоты. Это нужно для создания миниатюр для галереи изображений на веб-сайте, поэтому я хочу сохранить соотношение сторон таким же.
У меня есть несколько решений, но ни одно из них не делает то, что мне нужно; они вращаются вокруг масштабирования, основанного на сохранении одинаковой ширины или высоты, но не изменении обоих.
Пример:
Если у меня есть изображение 4272 на 2848, и я хочу масштабировать его до размера 1024 на 768, то результирующее изображение должно быть 1024 на 683 и дополнено (черной рамкой )до 1024 на 768.
Как я могу сделать это с изображениями больше требуемого размера и меньше требуемого размера, а также с дополняющими изображениями, которые не соответствуют точному размеру, который мне нужен после масштабирования?