TourDeJeu, le réseau des jeux en ligne alternatifs : jeux web multijoueurs, jeux par forum. En savoir +

Flux RSS des discussions du forum : pour les joueurs, et pour les créateurs et MJ
  Reply to this topicStart new topicStart Poll

> Gd : Transparence Dégradée
zumba
Ecrit le : Mercredi 28 Février 2007 à 18h16
Quote Post


Ouf
*

Groupe : Membre
Messages : 496


Hello,
j'essaye de faire un truc en PHP GD mais je suis pas sur que ce soit faisable.
Est ce que GD gère sur les PNG la transparence progressive (alpha layer je crois qu'on apelle ça), en gros une transparence non pas "telle couleur est 100% transparente et les autres le sont pas" (à la gif) mais pour chaque pixel tel degré de transparence ?

Si oui,
1) comment on génère un tel png (en gros je voudrais un dégradé circulaire rouge 100% opaque au centre et 100% transparent sur les bords). je me sers de paint shop pro qui visiblement ne gère que la transparence tout ou rien.
2) comment je fais en php/gd pour copier coller mon image à transparence dégradée sur une autre, avec elle même un degré général de transparence ?

Merci à la communauté,
zba


--------------------
Z
PMEmail Poster
Top
Flamme
Ecrit le : Mercredi 28 Février 2007 à 19h20
Quote Post


Alien
*

Groupe : Moderateurs
Messages : 1431


Je ne connais pas PHP/GD, mais les PNG, beaucoup mieux.

L'alpha layer ou "couche alpha" est un canal suplémentaire qui permet de coder le degré de transparence de la couleur. L'effet de tranparence progressive quui utilise la canal alpha est l'alpha blending.

En principe, Paint Shop Pro dans ses dernières versions gère bien le PNG avec transparence progressive, mais ce programme est tellement "usine à gaz" qu'on s'y perd... sad.gif

Pour générer, donc, un tel PNG :

Si tu n'as pas une version légale de Photoshop ou Photoshop Elements, Gimp le fait aussi très simplement et très bien. Pour créer une telle image, tu crées une image à fonds transparent, tu fais une sélection circulaire puis tu utilises un outil de dégradé radial avec un dégradé qui va du rouge vers le transparent, en partant bien du milieu de la sélection et en étirant jusqu'au bord.

user posted image

Tu n'as plus qu'à enregistrer en format PNG.


--------------------
user posted image user posted image

La feuilletoniste - le forum des Écrivains de la Toile.
PMEmail PosterUsers Website
Top
Harparine
Ecrit le : Mercredi 28 Février 2007 à 20h52
Quote Post


Kid
*

Groupe : Membre
Messages : 45


Pour le PNG, j'allais te répondre la même chose que Flamme : Gimp ou Photoshop sont très bien pour créer des PNG.

Par contre, je m'étais déjà posé la question à propos de GD, sans avoir le temps d'approfondir. Je viens donc de me livrer à une série de tests et il semblerait que les couches alpha ne soient pas encore correctement gérées car tout mon png passe à 100% d'opacité lorsqu'il est collé sur une image de fond de façon dynamique.

Comme tu peux paramétrer l'opacité GENERALE de l'image incrustée, il est toujours possible de simuler un dégradé en superposant des cercles rouges d'opacité et de tailles différentes. Je viens de tester et ça donne quelque chose comme ça : test de dégradé en GD (c'est toujours mieux que rien).

Par contre, c'est assez lourd pour le serveur si tu affines ton dégradé au max comme je l'ai fait : il crée 100 cercles rouges dans une boucle. Donc, si tu es obligé de générer ça régulièrement, il vaut mieux utiliser un autre système que GD. Par exemple, des div superposées contenant tes PNGs (ce qui te permettrait en plus d'avoir un vrai dégradé).

Si tu veux le code de la génération dynamique de dégradés, je le poste (il est très simple, car basé sur un cours du site du zéro). wink.gif

Juste pour info, comment veux-tu utiliser ton dégradé ? Peut-être il y a-t'il une meilleure solution que GD ?
PMEmail Poster
Top
zumba
Ecrit le : Mercredi 28 Février 2007 à 21h15
Quote Post


Ouf
*

Groupe : Membre
Messages : 496


Holé !
merci, finalement je me suis débrouillé autreent : je trace des cercles concentriques sucessifs de transparence progresive (imageEllipse)
allez hop un aperçu du résultat.
Bonne soirée !
user posted image


--------------------
Z
PMEmail Poster
Top
Harparine
Ecrit le : Mercredi 28 Février 2007 à 21h17
Quote Post


Kid
*

Groupe : Membre
Messages : 45


J'avais adopté la même technique. wink.gif Bonne chance pour la suite !
PMEmail Poster
Top
« Sujets + anciens | Programmer | Sujets + récents »

Reply to this topicStart new topicStart Poll