Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Изменить размер изображения


Автор: armor85 24.12.2007, 14:57
Здравствуйте,

как изменить размер изображения сохраняя пропорции,
причем пропорции должны быть как по ширине так и по высоте,
т.е. рисунок ограничен размерами 300x250. Если ширина больше значит
подводим её и изменяем высоту пропорционально и на оборот.

Автор: Alexeis 24.12.2007, 15:07
Код

Image1.Proportional := True;

Автор: armor85 24.12.2007, 15:39
Alexeis, да нет не на форме,
Загрузил изображение, изменил его, сохранил на диск.

Автор: Alexeis 24.12.2007, 15:50
  Тада у канвы есть метод StretchDraw();

На счет пропорций считаем коэффициенты сжатия для ширины и высоты, например kW = Width1 / Width2 и kH = Height1 / Height2. Выбираем меньший из коэффициентов и по нему пересчитываем прямоугольник в который нужно ужать/расширить картинку. Этот прямоугольник передаем в StretchDraw вместе с картинкой. 

Автор: armor85 24.12.2007, 16:00
Alexeis, Понятно попробую.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)