Ooit, in een grijs verleden, heb ik een paar fotoboeken gemaakt. Met onder andere resizen van foto's. Dat heeft altijd gewerkt. Tot ik over ging op GD2.
De sinds php 4.x heeft php built-in GD support, mits je even --with-gd bij het compilen meegeeft. Maar sinds ik die gebruik, gaat het resizen van plaatjes gewoon slecht. Bijvoorbeeld:


En ik heb toch nergens opgegeven dat hij er zwart-wit van mag maken. Dit is overigens nog een van de betere beelden, want deze is nog herkenbaar. Bij de meeste plaatjes zit er een grijze waas over heen. En dit is in alle fotoboeken die ik gebruik.
Het vreemdste: het lijkt soms zelfs uit te maken naar welk formaat je resizet. Ik krijg daar nu even geen voorbeeld van gemaakt, maar heb het wel eens gezien dat een plaatje van 1024x768 bij het resizen naar 800x600 kapot ging, en bij resizen naar 160x120 goed ging.
Nog even een stukje php code wat verkeerde output maakt:
Heeft er iemand anders ervaring met dit probleem? Doe ik iets fout wat op GD1.6.x wel werkt, maar op GD2 dit oplevert?
Ik zit overigens op dit moment met PHP 4.3.4
De sinds php 4.x heeft php built-in GD support, mits je even --with-gd bij het compilen meegeeft. Maar sinds ik die gebruik, gaat het resizen van plaatjes gewoon slecht. Bijvoorbeeld:


En ik heb toch nergens opgegeven dat hij er zwart-wit van mag maken. Dit is overigens nog een van de betere beelden, want deze is nog herkenbaar. Bij de meeste plaatjes zit er een grijze waas over heen. En dit is in alle fotoboeken die ik gebruik.
Het vreemdste: het lijkt soms zelfs uit te maken naar welk formaat je resizet. Ik krijg daar nu even geen voorbeeld van gemaakt, maar heb het wel eens gezien dat een plaatje van 1024x768 bij het resizen naar 800x600 kapot ging, en bij resizen naar 160x120 goed ging.
Nog even een stukje php code wat verkeerde output maakt:
PHP:
1
2
3
4
5
6
7
| $img=@imagecreatefromjpeg($filename); $new_w=800; $new_h=600; $dst_img=ImageCreate($new_w,$new_h); ImageCopyResized($dst_img,$img,0,0,0,0,$new_w,$new_h,ImageSX($img),ImageSY($img)); imagejpeg($dst_img,$outfile,95); imagedestroy($dst_img); |
Heeft er iemand anders ervaring met dit probleem? Doe ik iets fout wat op GD1.6.x wel werkt, maar op GD2 dit oplevert?
Ik zit overigens op dit moment met PHP 4.3.4
[ Voor 1% gewijzigd door Verwijderd op 17-02-2004 11:47 . Reden: resize pic ]