Le flou gaussien supprime tous les pixels transparents de l'image

J'essaie de créer une image transparente avec une forme noire dessus.

Utilisez ensuite IMG_FILTER_GAUSSIAN_BLUR dessus pour flouter un peu la forme.

Le problème est dès que j'applique un filtre de flou, l'image entière perd ses pixels transparents et l'image entière devient noire.

Donc, quand je copie l'image finale sur une image blanche, puis au lieu d'obtenir une image transparente avec une forme noire floue, j'obtiens une image complètement noire …

Quel est le probleme avec ca?
SEMrush

<? php

$ image = imagecreatetruecolor (200, 200);
imagealphablending ($ image, false);
imagesavealpha ($ image, true);
$ trans = imagecolorallocatealpha ($ image, 255, 255, 255, 127);
imagefill ($ image, 0,0, $ trans);
$ noir = imagecolorallocatealpha ($ image, 0,0,0,0);
imagefilledrectangle ($ image, 50,50, 150,150, $ noir);

// en-tête ("Content-Type: image / png"); imagepng ($ image); sortie();

// ci-dessus est notre image de base

// maintenant je gaussien brouille ce

filtre d'image ($ image, IMG_FILTER_GAUSSIAN_BLUR);

/ *
// reste maintenant le plus de pixels qui devrait être 127.127.127.127
$ rgb = imagecolorat ($ image, 0,0);
$ c = imagecolorsforindex ($ image, $ rgb);
echo $ c ('rouge'). "/". $ c ('vert'). "/". $ c ('bleu'). "/". $ c ('alpha'). "
";
// devrait toujours être 255/255/255/127
// est désormais 0/0/0/0 maintenant …
* /

// copie ceci sur une image blanche
// tout devient noir …
// c'est le problème, tous les pixels transparents sont perdus après application du flou

$ w = imagesx ($ image);
$ h = imagesy ($ image);

$ img = imagecreatetruecolor ($ w, $ h);
imagesavealpha ($ img, true);
$ blanc = imagecolorallocatealpha ($ img, 255, 255, 255, 0);
remplissage d'image ($ img, 0,0, $ white);

imagecopyresampled ($ img, $ image, 0,0, 0,0, $ w, $ h, $ w, $ h);

// cela produira une image noire.
// à la place, il aurait dû donner une image blanche avec une forme "noire" floue dessus.
// commente la ligne du filtre d'image pour voir ce qui devrait apparaître (pas floue)
// Je veux floue

en-tête ("Content-Type: image / png"); imagepng ($ img); sortie();