imagepalettetotruecolor

Converts a palette based image to true color

Description

bool imagepalettetotruecolor(GdImage $image)

Converts a palette based image, created by functions like imagecreate to a true color image, like imagecreatetruecolor.

Parameters

image

A GdImage object, returned by one of the image creation functions, such as imagecreatetruecolor.

Return Values

Returns true if the convertion was complete, or if the source image already is a true color image, otherwise false is returned.

Changelog

Version Description
8.0.0 image expects a GdImage instance now; previously, a valid gd resource was expected.

Examples

Example #1 Converts any image object to true color

<?php
// Backwards compatiblity
if(!function_exists('imagepalettetotruecolor'))
{
    function imagepalettetotruecolor(&$src)
    {
        if(imageistruecolor($src))
        {
            return(true);
        }

        $dst = imagecreatetruecolor(imagesx($src), imagesy($src));

        imagecopy($dst, $src, 0, 0, 0, 0, imagesx($src), imagesy($src));
        imagedestroy($src);

        $src = $dst;

        return(true);
    }
}

// Helper closure
$typeof = function() use($im)
{
    echo 'typeof($im) = ' . (imageistruecolor($im) ? 'true color' : 'palette'), PHP_EOL;
};

// Create a palette based image
$im = imagecreate(100, 100);
$typeof();

// Convert it to true color
imagepalettetotruecolor($im);
$typeof();

// Free the memory
imagedestroy($im);
?>

The above example will output:

typeof($im) = palette
typeof($im) = true color

See Also

  • imagecreatetruecolor
  • imageistruecolor