Hello community, I am using the following php script to resize .gif images using the GD library; It works very decent: ------------------------------------------------------------------------ $src_img =imagecreatefromgif("bulb_gif.gif"); $srcsize = getimagesize('bulb_gif.gif'); $dest_x = 200; $dest_y = (200/ $srcsize[0]) * $srcsize[1];//resize ratio. $dst_img = imagecreatetruecolor($dest_x, $dest_y); // Resize image imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_x, $dest_y, $srcsize[0], $srcsize[1]); // Output image header("content-type: image/gif"); imagegif($dst_img);//final image // Destroy images imagedestroy($src_img); imagedestroy($dst_img); ------------------------------------------------------------------------ The problem is when resizing images with white background (not transparency), after the script is executed the image background turns not being 100% white (255,255,255). Links: Original .gif file: http://10-network.net/image_thumbial/bulb_gif.gif Resized image: http://10-network.net/image_thumbial/index.php You can notice the difference between the resized image and the page background. This varies from LCD to LCD, I can tell the difference in my main screen is about 75%, in other screens I have around this is about 90%. Any help will be gently apreciated. Thank you.
You are using an interpolated resizing operation. Either use a non-interpolating resizing operation instead, or do not create a true colour destination image.
Hello! Can you clarify what does it mean, non-interpolating resizing. Does it means to use imagesetinterpolation function (http://www.php.net/manual/en/function.imagesetinterpolation.php) or another php function? Can you write an example of code, please! It's very important. I have not found any other discussions of this problem all around the Internet.