Alpha()

Syntaxe

Resultat = Alpha(Couleur)
Description
Renvoie la valeur de la composante alpha (transparence) d'une couleur.

Arguments

Couleur La valeur de la couleur.

Cela ne peut être qu'une valeur RGBA 32 bits.

Valeur de retour

Renvoie la valeur de la composante alpha.
Une valeur de 0 signifie une complète transparence et une valeur de 255 signifie opacité totale.
Le résultat sera compris entre 0 et 255.

Remarques

RGBA() permet de combiner les valeurs rouge, verte, bleue et alpha en une couleur 32 bits.
Ces fonctions sont utiles lors des opérations de dessin 2D.

Exemple

 If OpenWindow(0, 0, 0, 200, 200, "Alpha", #PB_Window_SystemMenu|#PB_Window_ScreenCentered)
  If CreateImage(0, 800, 600, 32) And StartDrawing(ImageOutput(0)) ; création d'une image fond noir par défaut
    DrawingMode(#PB_2DDrawing_AlphaChannel) ; le Canal alpha (transparence) sera modifié
    Box(0, 0, 200, 200, $00000000)          ; le noir est complètement transparent
   
    DrawingMode(#PB_2DDrawing_AlphaBlend)   ; le dessin sera fusionné avec le fond en utilisant le canal alpha pour gérer la transparence de chaque pixel
    Circle( 75,  75, 50, RGBA(255,   0,   0, 64))  ; Cercle rouge très transparent
    Circle(125,  75, 50, RGBA(  0, 255,   0, 128)) ; Cercle vert moyennement transparent
    Circle(100, 125, 50, RGBA(  0,   0, 255, 192)) ; Cercle bleu peu transparent
    DrawText(20, 180, "Cliquer sur le dessin")     ; Texte sans transparence
    StopDrawing()
  EndIf
 
  ImageGadget(0, 0, 0, 0, 0, ImageID(0))  ; Affichage du dessin dans un gadget
  
    Repeat
      Event = WaitWindowEvent(0) 
      If  Event = #PB_Event_Gadget And EventType() = #PB_EventType_LeftClick  
        x = WindowMouseX(0)
        y = WindowMouseY(0)
        If Bool(x>0  And y>0)      
          StartDrawing(ImageOutput(0))
          DrawingMode(#PB_2DDrawing_AlphaBlend)
          Couleur = Point(x,y)
          Transparence = Alpha(Couleur)
          Debug "La composante Transparence vaut : " + Str(Transparence)
          StopDrawing()
        EndIf
      EndIf
    Until Event = #PB_Event_CloseWindow   
  EndIf

Voir aussi

Red(), Green(), Blue(), RGBA()

OS Supportés

Tous

2DDrawing Index - AlphaBlend() ->