J'utilise alphablend dans mon project actuel.
Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32
bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ).
D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha
dans l'image.
Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec
la fonction alphablend ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Christian ASTOR
patate wrote:
J'utilise alphablend dans mon project actuel. Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32 bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ). D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha dans l'image. Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec la fonction alphablend ?
Tu es allé voir chez F.Yuan ? http://www.fengyuan.com/article/alphablend.html
patate wrote:
J'utilise alphablend dans mon project actuel.
Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32
bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ).
D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha
dans l'image.
Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec
la fonction alphablend ?
Tu es allé voir chez F.Yuan ?
http://www.fengyuan.com/article/alphablend.html
J'utilise alphablend dans mon project actuel. Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32 bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ). D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha dans l'image. Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec la fonction alphablend ?
Tu es allé voir chez F.Yuan ? http://www.fengyuan.com/article/alphablend.html
Christian ASTOR
patate wrote:
J'utilise alphablend dans mon project actuel. Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32 bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ). D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha dans l'image. Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec la fonction alphablend ?
Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex) , AlphaBlend() marche très bien ensuite.
patate wrote:
J'utilise alphablend dans mon project actuel.
Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32
bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ).
D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha
dans l'image.
Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec
la fonction alphablend ?
Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex)
, AlphaBlend() marche très bien ensuite.
J'utilise alphablend dans mon project actuel. Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32 bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ). D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha dans l'image. Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec la fonction alphablend ?
Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex) , AlphaBlend() marche très bien ensuite.
patate
> Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex) , AlphaBlend() marche très bien ensuite.
Merci je ne connaissai pas cette fonction. Tres utile.
Au final j'ai fait comme ceci ( juste apres le chargement ) pour chaque pixel r =( r*alpha)/255 g =(g*alpha)/255 b =(b*alpha)/255
l'alpha etant a 0 sur les zones blanches, ca les a repassées en "noir transparent". Buffer que je place dans un nouveau hbitmap 32 bits.
pat.
>
Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex)
, AlphaBlend() marche très bien ensuite.
Merci je ne connaissai pas cette fonction. Tres utile.
Au final j'ai fait comme ceci ( juste apres le chargement )
pour chaque pixel
r =( r*alpha)/255
g =(g*alpha)/255
b =(b*alpha)/255
l'alpha etant a 0 sur les zones blanches, ca les a repassées en "noir
transparent". Buffer que je place dans un nouveau hbitmap 32 bits.