2010-04-07 10 views
2

J'ai un problème pour créer des fichiers PNG alpha avec PHP GD. Je n'ai pas d'imageMagik etc.Création de fichiers PNG alpha avec PHP GD

Bien que les images se chargent parfaitement dans le navigateur et dans les programmes GFX, j'ai des problèmes avec Flash AS3 (actionscript) pour comprendre les fichiers. Il se plaint d'être un type inconnu. Mais, exporter ces fichiers de Fireworks à la même spécification fonctionne très bien. Donc, je suggère que quelque chose ne va pas avec le formatage en PHP GD.

Il semble y avoir plusieurs façons de le faire, avec plusieurs fonctions similaires; alors peut-être que ce n'est pas vrai?

$ 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 de $, $ image, 0, 0, 0, 0, $ width_orig, $ height_orig, $ width_orig, $ height_orig);

imagepng ($ image_p, "nouveau2 /" .$ filename, 0);

imagedestroy ($ image_p); Cela prend juste les fichiers qui lui sont donnés et les place dans de nouveaux fichiers avec une largeur/hauteur spécifiée - pour cet exemple c'est la même chose que l'original mais en production il redimensionne, c'est pourquoi je rééchantillonne.

Répondre

1

Pour garder la transparence que vous devez faire

imagealphablending($image_p, false); 

au lieu de "vrai". Peut-être que cela va résoudre le problème de format aussi.