Jump to content

Recommended Posts

Hi,

I am having a problem related to GD and PHP. I am trying to create an image with GD library and PHP, but...

here is what happens:

If I run the code on my localhost




<?php
header ("Content-type: image/png");
$img_handle = ImageCreate (230, 20) or die ("Cannot Create image");
$back_color = ImageColorAllocate ($img_handle, 0, 10, 10);
$txt_color = ImageColorAllocate ($img_handle, 233, 114, 191);
ImageString ($img_handle, 31, 5, 5, "My first Program with GD", $txt_color);
ImagePng ($img_handle);
?>



Instead of showing a png file it prints wierd characters on the browser:

‰PNG  IHDRæ£þÓêPLTE ér¿`ŽLÚIDATxœåбAàŸMhF®!ža’+(„WÙË&ª;‘x?ë”Z…‡Ði'J­D£RÑ+®0wÁ¯`«ÙýòÏfø³Sc

CYeŸG?Eý˜õà«*T,(´ªšðñ£Peí|&H»;?&¦±éÖ³½54IÇ%¥öÉé¿×‘[¢•!‘i¡)1kg$;ÇP

E‚˜o™¶²,{»—z÷·†…Âå:`Ž¾´¹Ì”?¨Ž,³fSñƒ8Ÿ¨Æ7È?½íEµ¯E´ª,ÒNçÛ@µ4&‚øg••Gé2ü¶'€£D?ijžIEND®B`‚



Yes, it prints all this weird characters just as it is above. I know I have installed GD, because I checked it with the info() function:

<?php


echo "<xmp> ";

print_r(gd_info());


echo "</xmp> ";


?>



This prints:


Array
(
[GD Version] => bundled (2.0.28 compatible)
[FreeType Support] => 1
[FreeType Linkage] => with freetype
[T1Lib Support] =>
[GIF Read Support] => 1
[GIF Create Support] => 1
[JPG Support] => 1
[PNG Support] => 1
[WBMP Support] => 1
[XPM Support] =>
[XBM Support] => 1
[JIS-mapped Japanese Font Support] =>
)




This shows GD is enabled.


But, I don't know why it doesn't show the image but a string of weird characters.
If I run the following code, and image is created in the specified local directory below, but only an orange square is created(png file), but with NO STRING attached to it:



header("Content-type: image/png");

$string = "hey dude.......";
$im = imagecreate(600,900);
$orange = imagecolorallocate($im, 220, 210, 60);
imagestring($im,5,3,1,$string,$orange);

//saves image to "myimage.png"

imagepng($im,"myimage.png");


Is there something I am missing? It seems I have all the files in place. I put bgd.dll, and php_gd2.dll in the Systems directory in Windows.
I also uncommented the line required on php.ini for extensions, so it seems it is loading that module.




Please help me. All your help is very much appreciated.




Thanks!!




Alberto


ps: I am running PHP version 5.0.4



gd
GD Support enabled
GD Version bundled (2.0.28 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.1.9
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabled
Link to comment
https://forums.phpfreaks.com/topic/8666-gd-php-problem/
Share on other sites

The image is some how gettign corrupted when it reaches your browser probably. Make sure you do not output any content before the image (no other headers, no prints, no echos) and also make sure you have now extra empty liens or spaces at the end or beginning of the file (before and after the <? and ?> tags) this will cause those spaces to actually be output to the browser as text and corrupt the image.
Link to comment
https://forums.phpfreaks.com/topic/8666-gd-php-problem/#findComment-31851
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.