Différence entre les formats d'image RGB888 et ARGB8888

je suis nouveau dans le traitement d'image et le développement de jeux. Je suivais un tutoriel dans lequel il suggère d'utiliser l'image de fond de format RGB888et pour les sprites, les boutons et d'autres reste les icônes, il vous suggérons d'utiliser ARGB8888 format.

la différence la plus fondamentale est Qu'il y a des Bits RGB888 est 24bit ARGB8888 est de 32 bits.

alors je veux savoir quelle est la différence réelle entre ces deux formats et comment ils agissent dans la représentation visuelle?

10
demandé sur Crawler 2014-09-25 11:08:52

3 réponses

plus de détails sur l'espace de couleur sur Wikipédia plus d'information sur les bitmaps sur Développeurs Android Documentation. lpha, R ed, G reen et B les canaux lue sont représentés. Le canal alpha indique le niveau de transparence dans l'image. Le '8' dans le nom fait référence au nombre de bits par canal. Donc RGB est 8+8+8 = 24 bits, et ARGB est 8+8+8+8 = 32 bit.

Dessin RGB va vous permettre de choisir la couleur de l'image, soit, RGB888 suppose une valeur alpha de 255. Ajouter la valeur Alpha en utilisant ARGB8888 vous permettra de régler vous-même la transparence avec un nombre entre 0 (entièrement transparent) et 255 (entièrement opaque). Un exemple d'ajout de transparence mal à un menu dans Android serait quelque chose comme l'image ci-dessous:

14
répondu RossC 2014-09-25 07:27:33

RGB888 24 bits, 8 bits. Les deux formats que vous mentionnez sont 8 bits par canal, mais un a trois canaux et un a quatre.

La différence est que ARGB ajoute un canal alpha qui spécifie l'opacité de chaque pixel. C'est comme ça qu'on obtient des images semi-transparentes.

RGB est le même que ARGB avec une hypothèse implicite que la valeur alpha est 255, ou, en d'autres termes, complètement opaque.

6
répondu chiastic-security 2016-11-01 08:07:48

A - Alpha

R Rouge

G Vert

B Bleu

La différence est que ARGB ajoute un canal alpha qui spécifie l'opacité de chaque pixel. En l'utilisant, vous pouvez obtenir des images semi-transparentes/superpositions.

RGB888 24 bits, 8 bits. Il a Trois canaux avec 8 bits par canal,

ARGB8888 Il a Quatre canaux avec 8 bits par canal.

la valeur Alpha est 0-255, où 0 est entièrement transparent et 255 est entièrement opaque.

ARGB_8888 Documentation dit: Chaque pixel est stocké sur 4 octets. Chaque canal (RGB et alpha pour la translucidité) est stocké avec 8 bits de précision (256 valeurs possibles.) Cette configuration est très flexible et offre le meilleur qualité. Il doit être utilisé dans la mesure du possible.

4
répondu Sagar Pilkhwal 2016-11-01 08:34:14