samitrimal Posted March 29, 2011 Share Posted March 29, 2011 hi when i called this function i got the error :Error creating image in test function test(){ $height = 800; //the width of canvas $width = 890; //creating the image with $height and $width $im = imagecreate($width, $height) or die("Error creating image in test"); // width , height px $white = imagecolorallocate($im, 255, 255, 250) or die("Error in image allocation in test"); $black = imagecolorallocate($im, 0, 0, 0) or die("Error in image allocation"); imagefill($im, 0, 0, $black); } Link to comment https://forums.phpfreaks.com/topic/232022-error-in-imagecolorallocate/ Share on other sites More sharing options...
jtreanor Posted March 29, 2011 Share Posted March 29, 2011 I'm not entirely sure why but this works for me: $height = 800; //the width of canvas $width = 890; //creating the image with $height and $width $im = imagecreatetruecolor($width, $height) or die("Error creating image in test"); // width , height px $white = imagecolorallocate($im, 255, 255, 255); $black = imagecolorallocate($im, 0, 0, 0); imagefill($im, 0, 0, $black); imagecolorallocate seems to evaluate to false. Link to comment https://forums.phpfreaks.com/topic/232022-error-in-imagecolorallocate/#findComment-1193603 Share on other sites More sharing options...
PFMaBiSmAd Posted March 29, 2011 Share Posted March 29, 2011 imagecolorallocate() returns an integer and the first call to it returns a zero value which will trigger the or die() statement. There's even a warning in the documentation about how to test the value that is returned - Warning This function may return Boolean FALSE, but may also return a non-Boolean value which evaluates to FALSE, such as 0 or "". Please read the section on Booleans for more information. Use the === operator for testing the return value of this function. Don't use or anything() to test if the function call failed. Use a proper if() statement. Link to comment https://forums.phpfreaks.com/topic/232022-error-in-imagecolorallocate/#findComment-1193610 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.