2013-07-10 3 views
0

Привет, ребята, я взламываю голову на это.Изменение размера изображения с фиксированной шириной, но динамическая высота

У меня есть пара фото, все с разным рационом (1288x1977, 1044x1789).

То, что я пытаюсь сделать сейчас, чтобы изменить размер оригинала до 2 меньше воображает с фиксированной шириной (640 & 1024), но динамический (процент на основе я предполагаю) высоту, так что оригинал 1047x1501 бы разделят на: 1024x1468 и 640x917, это ожидаемые результаты, но я не могу обернуть мою голову вокруг математики, чтобы сделать это. Я надеюсь, что вы можете помочь.

+0

The термин, который вы ищете, - это «соотношение сторон». Вы хотите, чтобы соотношение ширины/высоты было одинаковым по размеру изображения, как в оригинале. Таким образом, вы знаете оригинальную ширину и высоту и новую ширину; решая простую пропорцию, вы должны получить новую высоту ... – twalberg

ответ

3

Итак, вы хотите получить высоту от требуемой ширины при сохранении соотношения сторон?

Это математика, на самом деле, а не программирования:

Aspect = orig_width/orig_height 

Aspect = new_width/new_height 

так

orig_width/orig_height = new_width/new_height 

так

new_height * (orig_width/orig_height) = new_width 

так

new_height = new_width/(orig_width/orig_height) 
+0

Ну, ширина всегда фиксирована, поэтому результаты всегда должны быть как 640x? и 1024x? – Soundz

+0

Да, это не меняет основной формулы. –

+0

k, я тестирую и принимаю или хвастаюсь еще;) – Soundz

Смежные вопросы