imagecolortransparent на PHP не работает

Я хочу изменить белый цвет на изображении ( http://img.ruphp.com/image-processing/radar.gif ) на прозрачный. Я думаю, что код выглядит правильно, журналы ошибок отсутствуют, но изображение остается неизменным. Я дважды проверял, действительно ли цвет на изображении белый, и это так. Пожалуйста помоги.

<?php $im = imagecreatefromgif("http://img.ruphp.com/image-processing/radar.gif"); imagealphablending($im, false); imagesavealpha($im, true); $white = imagecolorallocate($im, 255, 255, 255); imagecolortransparent($im, $white); imagegif($im, './image_radar_tran.gif'); imagedestroy($im); ?> <body style="background-color: lightgoldenrodyellow;"> <img src="./image_radar_tran.gif" /> </body> 

Изменить:

 $white = imagecolorallocate($im, 255, 255, 255); 

Для того, чтобы:

 $white = imagecolorexact($im, 255, 255, 255); 

И это сработает. Причина в том, что цвет «белый» уже определен в индексе gif, который вы используете, поэтому вы не можете выделить новый индекс для этого цвета. Вместо этого, используя imagecolorexact , вы получаете существующий индекс для белого цвета для использования, а затем можете изменить его на прозрачный.