Mazej
Дело в том что надо выбирать из двух вещей. Эта функция делает копию большого изображения. А теперь подумай, что получится из картинки размером 600*200 если я ее уменьшу скажем до размеров 200*150. Картинка уменьшится но с большими искажениями.
Скрипт проверяет, если ширина картинки больше чем 250 px то включается скрипт создания превьюшек, если меньше или равно то выводится оригинальная картинка.
Далее, например ширина картинки больше чем 250px, тогда скрипт высчитывает пропорции оригинальной и будущей картинки.
Ширина задана жестко и равна 150 px. Отсюда выясняем высоту будущей превьюхи по формуле высота.буд. = выс.ор./(шир.ор./шир.жест.).
Например:
w_or - 600 (ширина оригинальной картинки)
h_or - 200 (высота оригинальной картинки)
w_pr - 150 (ширина превью картинки)
h_pr - x (высота превью, неизвестна)
h_pr = h_or/(w_or/h_or) = 50 px
Если же я из этой ориг. картинки сделаю маленькую 200*150 (или 150*120) то картинка сильно растянется по высоте.
Вот такие вот дела
Ой, а написал то