Bonsoir,
Je viens de découvrir que les fonctionnes graphiques RECT_P, ARC_P, etc ... peuvent recevoir une valeur de canal alpha ex RECT_P(255, 0, 0, 128) donne un carré rouge transparent à 50%
J'ai cherché du côté de BLIT_P pour voir si on pouvait faire la même chose avec des png.
Mais je n'ai rien trouvé permettant d'indiquer une valeur alpha à une image.
Est-ce qu'il y'a possibilité de gérer la transparence des image ou bien faut t'il faire décomposer l'image dans tableau 2 dimensions et traiter chaque pixel ?
Cordialement,
Image et Canal Alpha
3 posts
• Page 1 of 1
Image et Canal Alpha
J'ai aussi une SHARP EL-9300 et une HP PRIME G2, et une feu HP 48 GX que j'adorais, mais problème au niveau de l'écran, irréparable 🥲.
-
canomod74
Niveau 3: MH (Membre Habitué)- Posts: 14
- Joined: 29 Jan 2025, 22:05
- Location: Haute-Savoie / ANNECY
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Image et Canal Alpha
Bonsoir.
De mémoire, les objets graphiques G0-G9 sur HP Prime n'ont pas de canal alpha.
Le canal alpha sert uniquement pour dessiner sur chacun de ces objets, via les fonctions acceptant une couleur en paramètre (comme RECT_P ou ARC_P).
Si une image a déjà été dessinée sur un de ces objets, la copier sur un autre avec une couche de transparence va effectivement nécessiter un traitement.
De mémoire, les objets graphiques G0-G9 sur HP Prime n'ont pas de canal alpha.
Le canal alpha sert uniquement pour dessiner sur chacun de ces objets, via les fonctions acceptant une couleur en paramètre (comme RECT_P ou ARC_P).
Si une image a déjà été dessinée sur un de ces objets, la copier sur un autre avec une couche de transparence va effectivement nécessiter un traitement.
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42173
- Images: 16664
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Image et Canal Alpha
Bonjour.
BLIT_P prend en charge le canal alpha. Il dispose d’un paramètre dédié à cet effet. Lorsque vous tapez le nom de la commande BLIT_P et appuyez sur la touche [Help], la documentation de cette commande s’ouvrira.
Comme vous pouvez le voir, il existe un paramètre dédié, appelé alpha, qui permet de définir de manière fluide l’échelle de transparence lors du dessin d’une bitmap, où 0 signifie une transparence totale et 255 une opacité totale. Il y a aussi un paramètre c, qui permet d’ignorer une couleur spécifique lors du rendu. Ce paramètre permet d’afficher une bitmap sur n’importe quel fond sans l’effacer.
Découvrez mon jeu "Reversi" (en cours d’implémentation). Voici une vidéo illustrant les effets obtenus grâce à BLIT_P (lors de l’enregistrement de la vidéo directement à partir de l’écran, des saccades sont apparues, mais sur l’appareil physique, l’animation est totalement fluide).
[anchor=][/anchor]

Dans la vidéo, on peut remarquer que le nom du jeu "REVERSI" sur l'écran titre est semi-transparent (on voit que l'arrière-plan animé transparaît à travers lui). Cet effet a été obtenu grâce au paramètre alpha.
De plus, tout ce texte est une seule image bitmap avec un fond blanc (qui n'est pas transparent), mais grâce au paramètre c, la couleur blanche n'est pas copiée (elle a donc une transparence à 100 %). Cela permet au fond de ne pas recouvrir l'image entre les lettres lors du dessin de cette bitmap et de copier toute l’image en un seul appel sans effacer l’arrière-plan déjà affiché à l’écran, ce qui est extrêmement rapide.
En outre, la définition de la valeur du paramètre alpha permet aux lettres d’être partiellement transparentes, laissant apparaître ce qui se trouve en dessous.
Pendant la partie, les pions apparaissent également progressivement, car leur rendu commence avec une transparence totale et, à chaque image de l’animation, ils deviennent de moins en moins transparents jusqu’à être entièrement visibles.
BLIT_P prend en charge le canal alpha. Il dispose d’un paramètre dédié à cet effet. Lorsque vous tapez le nom de la commande BLIT_P et appuyez sur la touche [Help], la documentation de cette commande s’ouvrira.
- Code: Select all
Syntaxe:
BLIT_P([trgtG], [dx1, dy1], [dx2, dy2], srcG, [sx1, sy1], [sx2, sy2], [c], [alpha])
Comme vous pouvez le voir, il existe un paramètre dédié, appelé alpha, qui permet de définir de manière fluide l’échelle de transparence lors du dessin d’une bitmap, où 0 signifie une transparence totale et 255 une opacité totale. Il y a aussi un paramètre c, qui permet d’ignorer une couleur spécifique lors du rendu. Ce paramètre permet d’afficher une bitmap sur n’importe quel fond sans l’effacer.
Découvrez mon jeu "Reversi" (en cours d’implémentation). Voici une vidéo illustrant les effets obtenus grâce à BLIT_P (lors de l’enregistrement de la vidéo directement à partir de l’écran, des saccades sont apparues, mais sur l’appareil physique, l’animation est totalement fluide).
[anchor=][/anchor]

Dans la vidéo, on peut remarquer que le nom du jeu "REVERSI" sur l'écran titre est semi-transparent (on voit que l'arrière-plan animé transparaît à travers lui). Cet effet a été obtenu grâce au paramètre alpha.
De plus, tout ce texte est une seule image bitmap avec un fond blanc (qui n'est pas transparent), mais grâce au paramètre c, la couleur blanche n'est pas copiée (elle a donc une transparence à 100 %). Cela permet au fond de ne pas recouvrir l'image entre les lettres lors du dessin de cette bitmap et de copier toute l’image en un seul appel sans effacer l’arrière-plan déjà affiché à l’écran, ce qui est extrêmement rapide.
En outre, la définition de la valeur du paramètre alpha permet aux lettres d’être partiellement transparentes, laissant apparaître ce qui se trouve en dessous.
Pendant la partie, les pions apparaissent également progressivement, car leur rendu commence avec une transparence totale et, à chaque image de l’animation, ils deviennent de moins en moins transparents jusqu’à être entièrement visibles.
-
komame
Niveau 2: MI2 (Membre Initié)- Posts: 3
- Joined: 08 Feb 2024, 19:26
- Gender:
- Calculator(s):→ MyCalcs profile
3 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 1 guest