<?php
// Compatibilité ascendante
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));
$src = $dst;
return(true);
}
}
// Utilisation d'une Closure
$typeof = function() use($im)
{
echo 'typeof($im) = ' . (imageistruecolor($im) ? 'true color' : 'palette'), PHP_EOL;
};
// Crée une image basée sur une palette
$im = imagecreate(100, 100);
$typeof();
// On la convertit en couleur vraie
imagepalettetotruecolor($im);
$typeof();
?>
L'exemple ci-dessus va afficher :
typeof($im) = palette
typeof($im) = true color