Font color in jpeg image (nearly) always orange

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • spgedwards@gmail.com

    Font color in jpeg image (nearly) always orange

    I am trying to run a basic script that displays an existing jpeg image
    and writes some text over it. Sounds simple, but I cannot seem to be
    able to colour the font correctly. In the example below it should be
    black but it comes out orange. In fact, even if I change the colour to
    0, 0, 255 it's orange.

    I've read in the PHP documentation (the user contributed notes) that
    there are issues with jpeg font colouring. But I've not seen any
    details. Can anyone shed light on this for me please?

    The example code below is called as a function. The $image variable is
    a path to the existing image file and the $ttf variable is a path to a
    TrueType font. The $text variable contains a text string.

    header("Content-type: image/jpeg");
    $base_image = imagecreatefrom jpeg($image);
    $font = $ttf;
    $fontcolor = imagecoloralloc ate($base_image , 0, 0, 0);
    imagettftext($b ase_image, 18, 0, 10, 100, $fontcolor, $font, $text);
    imagejpeg($base _image); imagedestroy($b ase_image);

    Cheers,
    Si.

  • spgedwards@gmail.com

    #2
    Re: Font color in jpeg image (nearly) always orange


    spgedwards@gmai l.com wrote:
    I am trying to run a basic script that displays an existing jpeg image
    and writes some text over it. Sounds simple, but I cannot seem to be
    able to colour the font correctly. In the example below it should be
    black but it comes out orange. In fact, even if I change the colour to
    0, 0, 255 it's orange.
    >
    I've read in the PHP documentation (the user contributed notes) that
    there are issues with jpeg font colouring. But I've not seen any
    details. Can anyone shed light on this for me please?
    >
    The example code below is called as a function. The $image variable is
    a path to the existing image file and the $ttf variable is a path to a
    TrueType font. The $text variable contains a text string.
    >
    header("Content-type: image/jpeg");
    $base_image = imagecreatefrom jpeg($image);
    $font = $ttf;
    $fontcolor = imagecoloralloc ate($base_image , 0, 0, 0);
    imagettftext($b ase_image, 18, 0, 10, 100, $fontcolor, $font, $text);
    imagejpeg($base _image); imagedestroy($b ase_image);
    >
    Cheers,
    Si.
    In case anyone with similar problems reads this thread I should point
    out that I now believe the failure of the above script to be due to a
    bug in an earlier-than-current version of PHP/GD. I am using PHP 4.4,
    GD 2.0.26.

    It seems that I'm not the only one to get a yellow/orange font (or
    nothing, depending on what you set the font colour to) when using
    imagettftext and imagecreatefrom jpeg (or imagecreatetrue color). I've
    done a work-around involving merging images, but it's not perfect. I
    guess the real answer is to upgrade.

    Cheers,
    Si.

    Comment

    Working...