Witam, problem następujący, chcę utworzyć sobie miniaturę z obrazu PNG i uploadować na serwer, zdjęcie w orginalnym rozmiarze uploaduje się bez problemu, miniaturka jest nie do odczytu, niby się tworzy ale nie da sie jej otworzyc, ani na dysku lokalnym ani na serwerze.
$img = imagecreatefrompng($sciezka.$data['file_name']);
$width = imagesx($img);
$height = imagesy($img);
$canvas_src = $img;
$canvas_w = ImageSX($canvas_src);
$canvas_h = ImageSY($canvas_src);
$canvas_img = imagecreatetruecolor($canvas_w, $canvas_h);
imagecopy($canvas_img, $canvas_src, 0,0,0,0, $canvas_w, $canvas_h);
imagedestroy($canvas_src);
$img = imagecreatefrompng($sciezka.$data['file_name']);
$tmp = imagecreatetruecolor(200,200);
if ($width > $height) {
$smallwidth2 = ($width-$height)/2;
$smallheight2 = 0;
$width = $height;
} elseif ($height > $width) {
$smallwidth2 = 0;
$smallheight2 = ($height-$width)/2;
$height = $width;
} else {
$smallwidth2 = 0;
$smallheight2 = 0;
}
imagecopyresampled($tmp, $img, 0, 0, $smallwidth2, $smallheight2, 200, 200, $width, $height);
$canvas_img = $tmp;
imagepng($canvas_img, $sciezka."_big".$data['file_name'], 200);
Co ciekawsze, funkcja działą poprawnie dla jpg, jpeg i gif analogicznie zmieniając "imagepng" na "imagejpg" itd.
Jakies sugestie??