dr_Alex
Erfahrenes Mitglied
hallo,
ich hab hier n script, der macht aus einen bild von hoher auflösung ein bild mit kleineren
dabei beachtet er die propotionnen und fühlt den rest mit weisser farbe. wenn ich das jedoch mache, werden die bilder sehr schlecht dargestellt. siehe screenshots weiter unten.
der script sieht etwa so aus:
die 2 grossen bildern sind original und die kleinen, sind die kaputten bilder.
danke vorraus
ich hab hier n script, der macht aus einen bild von hoher auflösung ein bild mit kleineren
dabei beachtet er die propotionnen und fühlt den rest mit weisser farbe. wenn ich das jedoch mache, werden die bilder sehr schlecht dargestellt. siehe screenshots weiter unten.
der script sieht etwa so aus:
PHP:
// config lite :)
$breite=100;
$hoehe=100;
// original bild rein
$im4=imagecreatefromjpeg($uploaddir.$filename.'_or.jpg');
// neues bild 100*100
$im5=imagecreate ($breite,$hoehe);
// weisse farbe ermittlen
$weiss = imagecolorallocate($im4,255,255,255);
// das neue bild mit weiss ausmalen
imagerectangle ($im5,0,0,$breite,$hoehe,$weiss);
// nimmt volle kanne die grösse
$image2x = getimagesize($uploaddir.$filename.'_or.jpg');
// und mach volle kanne das verhältnis ausrechnen
if ($image2x[0]>$image2x[1]){
$divs = $image2x[0]/$breite;
$y=intval($image2x[1]/$divs);
$x=$breite;
$x2=($breite-$x)/2;
$y2=($hoehe-$y)/2;
}else{
$divs = $image2x[1]/$hoehe;
$x=intval($image2x[0]/$divs);
$y= $hoehe;
$x2 = ($breite-$x)/2;
$y2 = ($hoehe-$y)/2;
}
// kopieren voll in einander
imagecopyresized ($im5,$im4,$x2,$y2,0,0,$x,$y,$image2x[0],$image2x[1]);
// ausgeben
imagejpeg($im5,$uploaddir.$filename.'_sm.jpg',100);
die 2 grossen bildern sind original und die kleinen, sind die kaputten bilder.
danke vorraus