Размер изображения несколько не зависит от размера файла поскольку разрешение по размеру бит является основным фактором в размере файла. Но для масштабирования и сохранения соотношения сторон (так что это не выглядит забавным) вы найдете пропорциональный эквивалент высоты с фиксированной шириной цели. Изображения, хранящиеся в таблице, представляют большой успех по сравнению с хранением их в веб-хранилище, но мы можем обсудить альтернативы этому.
например, скажем, вы хотите иметь фиксированную ширину 500, но изображение составляет 1280x900.
cross умножить коэффициент 1280/900 с 500/x, чтобы привести к (450000) = 1280x, а теперь решить X = (450000)/1280 или x = 351.5625 для новой высоты.
поэтому мы можем перевести это на PHP, как:
//detect picture size
list($width, $height, $type, $attr) = getimagesize("image_file_name.gif");
Так как мы уже знаем из целевой ширины, позволяет получить целевую высоту, используя упрощенную версию нашего перекрестного умножения:
$newHeight=($height*500)/$width;
Теперь все, что нам нужно сделать, это использовать метод resizer, так как теперь у нас тоже высота цели.
это хорошая статья на эту тему: https://dzone.com/articles/resize-image-class-php
У меня нет сейчас времени для подробного поста.
http://stackoverflow.com/questions/4590441/php-thumbnail-image-resizing-with-proportions?rq=1 – nand