ik zit met een probleem met het maken van thumbnails....
Bij sommige foto's doet hij alles perfect en bij andere geeft hij gewoon niks weer... iemand een idee hoe dat komt?
hier het scriptje wat aangeroepen wordt:
<?
$bestand = $_GET['bestand'];
$new_width = 150; //
$new_height = 150; //
global $convert;
global $ImageTool;
$imgsize = GetImageSize($bestand);
$width = $imgsize[0];
$height = $imgsize[1];
if ($width > $height) { // If the width is greater than the height it's a horizontal picture
$xoord = ceil(($width - $height) / 2 );
$width = $height; // Then we read a square frame that equals the width
}
else {
$yoord = ceil(($height - $width) / 2);
$height = $width;
}
$new_im = ImageCreatetruecolor($new_width,$new_height);
$im = ImageCreateFromJPEG($bestand);
imagecopyresampled($new_im,$im,0,0,$xoord,$yoord,$new_width,
$new_height,$width,$height);
header("Content-type: image/jpeg");
imagejpeg($new_im,'',100);
?>
thanx
?
Onbekende gebruiker
13-08-2009 19:18
Kun je iets noukeuriger zijn? Bij wlke foto's werkt het wel, en bij welke niet? Als ik je code zie, denk ik dat het aan dit stuk ligt:
$im = ImageCreateFromJPEG($bestand);
Is het bestand wel een jpg? niet een png of een gif? Je zou een stuk code moeten schrijven om te controleren met wat voor soort bestand je te maken hebt, ongeveer zoiets:
de extensie moet hetzelfde zijn als het type, dus extensie veranderen heeft geen zin. als dit het probleem zou zijn
?
Onbekende gebruiker
13-08-2009 19:43
yorick17 schreef op 13.08.2009 19:32
de extensie moet hetzelfde zijn als het type, dus extensie veranderen heeft geen zin. als dit het probleem zou zijn
Je veranderd ook niet de extensie, maar png/jpeg, gif en bmp worden anders opgeslagen. Omdat php het bestand omzet naar een variable om mee te werken (zal waarschijnlijk een array zijn met pixels, en pixelkleuren) moet elke file dus anders ingelezen worden. Ik heb png en jpeg bij elkaar staan omdat deze op ongeveer dezelfde manier ingelezen kunnen worden, maar gif is een heel ander verhaal. Verander de extensie van een .jpeg maar eens naar .png, als het goed is zou je de afbeelding nogsteeds moeten kunnen lezen, maar als je hem veranderd naar .gif dan leest hij hem niet meer (bij mijn windows 7 RTM tenminste). Daarom doe je het, en niet om te controleren of de extensie wel goed is.