Anonymní profil desik – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil desik – Programujte.comAnonymní profil desik – Programujte.com

 

Příspěvky odeslané z IP adresy 213.191.111.–

desik
PHP › funkce na zmenseni obrazku
24. 2. 2009   #95921

Potřeboval bych poradit od zkušenějších, jak vyřešit jednu zapeklitost. Mám funkci na zmenšení obrázku, bohužel funguje jen při obrázcích "naležato". Fotku na výšku zdeformuje :(



function img_resize($photo_name, $from, $max, $to) {
$ext = strtolower(end(explode('.',$photo_name)));
if ($ext == 'jpg' || $ext == 'jpeg') {
$im = imagecreatefromjpeg($from);
} else if ($ext == 'gif') {
$im = imagecreatefromgif($from);
} else if ($ext == 'png') {
$im = imagecreatefrompng($from);
} else {
return false;
}
$sx = imagesx($im);
$sy = imagesy($im);
$nx = $sx;
$ny = $sy;
if ($nx > $max) {
$nx = $max;
$ny = max(1, round($ny * ($nx / $sx)));
}
if ($ny > $max) {
$ny = $max;
$nx = max(1, round($nx * ($ny / $sy)));
}
$nm = imagecreatetruecolor($nx, $ny);
imagealphablending ($nm, false);
imagecopyresampled ($nm, $im, 0, 0, 0, 0, $nx, $ny, $sx, $sy);
if ($ext == 'jpg' || $ext == 'jpeg') {
imagejpeg ($nm, $to);
} else if ($ext == 'gif') {
//imagegif ($nm, $to);
imagejpeg ($nm, $to);
} else if ($ext == 'png') {
//imagesavealpha ($nm, true);
//imagepng ($nm, $to);
imagejpeg ($nm, $to);
} else {
echo"chyba při vytváření náhledu";
return false;
}

}


díky moc za rady,

desik

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý