Ja natrafiłem na taki wzór:
if($size[0] > $size[1]) { $thumbnail_width = 100; $thumbnail_height = (int)(100 * $size[1] / $size[0]); } else { $thumbnail_width = (int)(100 * $size[0] / $size[1]); $thumbnail_height = 100; }
Czyli w zależności od tego czy szerokość, czy wysokość jest większa ustala odpowiedni rozmiar.
Problem jest w tym, że ja chciałbym mieć miniaturki szerokości 135px (w przypadku gdy szerokość jest większa od wysokosci). Jak do tego obliczyc wysokość, oraz analogicznie stworzyć wysokośc i szerokość dla zdjęć, które mają większą wysokość niż szerokość. Przy ustalaniu szerokości wg tego wzoru (tzn podstawiając zamiast 100px - 135px) zdjęcia pionowe dobrze się nie skalują.
Jest do tego może jakiś lepszy wzór (chodzi mi o to żeby zdjęcie się skalowało dobrze).