ano ano:), to je logické. Není ani tak problém zjistit, jestli je fotka na výšku/šířku. Hlavní je tedy asi jak by toto mělo vypadat pro fotku na výšku a zde bych potřeboval konkrétnější radu:)
if ($nx > $max) {
$nx = $max;
$ny = max(1, round($ny * ($nx / $sx)));
}
if ($ny > $max) {
$ny = $max;
$nx = max(1, round($nx * ($ny / $sy)));
}