Hallo,
eins vorweg: PHP ist absolutes Neuland für mich. Bin seit ein paar Tagen dabei mich da rein zu fuchsen.
Doch nun zu meinem Problem:
Ich möchte ein Bild-Upload-Formular bauen, bei dem das Bild auf 255x234px verkleinert wird. Dazu habe ich auch schon ein Script hier im Forum gefunden und nach meinen Bedürfnissen angepasst. Mein Problem ist derzeit noch, dass das Bild gestaucht wird. Ich möchte aber, dass bei dem Bild je nach Format an den Seiten was abgeschnitten wird.
Habe schon rausgefunden, dass das irgendwie mit "ImageCopyResized" gehen soll. Aber ich kriegs einfach nicht hin.
Vielleicht sollte ich dazu sagen, dass ich die Berechnung von Höhe und Breite in dem Script vertauscht habe. Ich hoffe, dass das kein Fehler war...
Ich würde mich sehr freuen, wenn mir jemand helfen könnte!
eins vorweg: PHP ist absolutes Neuland für mich. Bin seit ein paar Tagen dabei mich da rein zu fuchsen.
Doch nun zu meinem Problem:
Ich möchte ein Bild-Upload-Formular bauen, bei dem das Bild auf 255x234px verkleinert wird. Dazu habe ich auch schon ein Script hier im Forum gefunden und nach meinen Bedürfnissen angepasst. Mein Problem ist derzeit noch, dass das Bild gestaucht wird. Ich möchte aber, dass bei dem Bild je nach Format an den Seiten was abgeschnitten wird.
Habe schon rausgefunden, dass das irgendwie mit "ImageCopyResized" gehen soll. Aber ich kriegs einfach nicht hin.
PHP-Code:
$K_MB = 255;
$K_MH = 234;
$k_size = getimagesize ("$UPLOADPIC");
$K_UPLOADPIC = "$UPLOADPIC";
if ($K_NH < $K_MH)
{
}
else
{
$ProportionFaktor = $K_NH / $K_MH;
$K_NH = $K_MH;
$K_NB = round($K_NB / $ProportionFaktor);
}
if ($k_size[0] < $K_MB)
{
$K_NB = $k_size[0];
$K_NH = $k_size[1];
}
else
{
$ProportionFaktor = $k_size[0] / $K_MB;
$K_NB = $K_MB;
$K_NH = round($k_size[1] / $ProportionFaktor);
}
if ($k_size[0] == $K_NB && $k_size[1] == $K_NH)
{
$UPLOADPIC_name = "$pic.jpg";
// Da mußte das Bild nicht verkleinert werden
copy ($K_UPLOADPIC, "images/$UPLOADPIC_name");
echo "$pic.jpg = pic<br>bild kann so bleiben<br>";
}
else
{
$UPLOADPIC_name = "$pic.jpg";
// Hier wird PIC verkleinert und gespeichert
$td=imageCreateTrueColor(255, 234);
$ts=imageCreateFromJPEG($K_UPLOADPIC);
imageCopyResampled($td, $ts, 0, 0, 0, 0, 255, 234, $k_size[0], $k_size[1]);
imageJPEG($td,"images/$UPLOADPIC_name");
echo "Das Bild heisst jetzt $pic.jpg<br><br>";
echo '<img src="images/'.$pic.'.jpg" border="0"></p>';
}
}
Ich würde mich sehr freuen, wenn mir jemand helfen könnte!
Kommentar