Создание альфа-PNG с помощью PHP GD

У меня проблема с созданием альфа-PNG с помощью PHP GD. У меня нет imageMagik и т. Д.

Хотя изображения отлично загружаются в браузере и в программах GFX, у меня возникают проблемы с Flash AS3 (ActionScript), понимающим файлы. Он жалуется на то, что он неизвестный тип. Но экспорт этих файлов из Fireworks в ту же спецификацию работает нормально. Итак, я предполагаю, что что-то не так с форматированием в PHP GD.

Кажется, есть несколько способов сделать это с несколькими похожими функциями; так может это не так?

$ image_p = imagecreatetruecolor ($ width_orig, $ height_orig);

$image = imagecreatefrompng($filename); 

imagealphablending($image_p, false);
ImageSaveAlpha($image_p, true);
ImageFill($image_p, 0, 0, IMG_COLOR_TRANSPARENT);
imagealphablending($image_p, true);

imagecopyresampled ($ image_p, $ image, 0, 0, 0, 0, $ width_orig, $ height_orig, $ width_orig, $ height_orig);

imagepng ($ image_p, "new2 /".$ имя_файла, 0);

imagedestroy ($ image_p);

Он просто берет предоставленные файлы и помещает их в новые файлы с указанной шириной / высотой - для этого примера он такой же, как и исходный, но при производстве он меняет размер, поэтому я передискретизирую.


person waxical    schedule 07.04.2010    source источник


Ответы (1)


Чтобы сохранить прозрачность, вам следует сделать

imagealphablending($image_p, false);

вместо «правда». Возможно, это решит и проблему форматирования.

person Andrew    schedule 09.05.2010