Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Пропорционально уменьшить картирнку. Как? |
Автор: Foli 17.2.2008, 15:22 |
Народ привет. Есть след. задача. Есть вэб страничка где юзер грузит фото сотрудника. На серваке в сервлете, нужно порезать картинку до нужного размера. Но, ПРОПОРЦИОНАЛЬНО!!! Для примера 3,5 x 4,5 Как это сделать? Всё работает но картинки разных размеров |
Автор: whoever 17.2.2008, 15:42 | ||
Так пропорционально или под определенные ширину И высоту? Пропорционально - значит, сохранить соотношение ширины и высоты. Для этого фиксируй один из параметров. Например, для фиксированной ширины:
|
Автор: Foli 17.2.2008, 16:11 | ||
Нужно картинку непросто обрезать а уменьшить её так, что бы обьект X на картинке тоже уменьшился. Можно тупо взять картинку и порезать до нужных размеров. Но при этом на картинке будет уже половина машины а не целая. Как уменьшить картинку без потери частей области машины? |
Автор: whoever 17.2.2008, 16:18 |
Приведенный код именно это и делает, сохраняя отношение ширина/высота. |
Автор: Foli 17.2.2008, 16:41 | ||||
Что это за image?
|
Автор: whoever 17.2.2008, 16:47 |
Опечатка - там originalImage должно быть. |
Автор: Foli 17.2.2008, 16:59 | ||||||
Вот твой код:
Это правильно: ?
Если да то я проверил его и картинка порезалась но половина машины на картинке обрезалось. Ну так где пропорциональное уменьшение изображения на какртинке? :( |
Автор: whoever 17.2.2008, 17:18 | ||
Нет, это неверно. Метод getScaledInstance изменяет размеры изображения (но не обрезает). В качестве параметров передаются ширина и высота результирующего изображения и метод сжатия. Ты передаешь ширину-высоту исходного изображения, естественно изменения размера никакого не будет. Верно будет так:
|
Автор: Foli 17.2.2008, 17:32 |
whoever спасибо друг! Всё работает. Йоохуууууу ![]() ![]() |
Автор: _Y_ 18.2.2008, 11:22 |
Всегдашняя проблема с масштабированием картинок для сети - как и сохранить пропорцию, и не обрезать изображение. ИМХО есть два решения: 1) Задавать только высоту или только ширину, а на веб-страничке картинку располагать так, чтобы изменение второго параметра не влияло на зрительное впечатление. 2) Уменьшать картинку по большему (в рамках пропорции) параметру, заполняя образовавшееся дополнительное поле белым (или фоном). По сути оба метода дают почти один и тот же результат. |