Hallo!
Die Gleichung funktioniert genauso, wie im realen Leben. Stelle zuerst fest, welche die längere Seite ist ($blah[0] oder $blah[1]). Diese Seite soll, laut deinen obigen Angaben, 150px lang werden. Stelle mittels des Dreisatzes fest, wieviel Prozent 150 Pixel von der gegebenen Länge sind. Bei einer gegebenen größeren Seite von 300px sind dies 50%.
Diese Prozentwert ist der Faktor, um den du nun beide Seiten skalieren musst. 50% entspricht dem Faktor 0.5. Teile also den ermittelten Prozentwert durch 100, multipliziere beide Seitenlängen mit diesem Wert (hier 0.5) und berechne mit den ermittelten neuen Seitenlängen das Bild neu.
Super, danke! Ich habe aus deinen Infos (die ich auch selbst durch Nachdenken hätte bekommen können) folgendes Script gemacht (alles funktionniert wunderbar):
if($sizeW > $sizeH){
$p = (150 * 100) / $sizeW;
$factor = $p / 100;
$width_skal = $sizeW * $factor;
$height_skal = $sizeH * $factor;
}
elseif($sizeH > $sizeW){
$p = (150 * 100) / $sizeH;
$factor = $p / 100;
$width_skal = $sizeW * $factor;
$height_skal = $sizeH * $factor;
}
Eigentlich ganz einfach! Danke!
Hendrik