Android'de Hex Renkler bazı zamanlar 8 basamaklıdır. Nasıl? #FFFFFF ve # FFFFFF00 arasındaki fark nedir


82

Bazen Android'de renklendirmenin # FF191919 olarak yapıldığı örneklerde görmüştüm. 8 basamaklı onaltılık bir sayı demek istiyorum. Ancak yalnızca 6 haneli bir sayı olmalıdır. Nasıl ilişkilidir? 6 basamaklı bir sayıyı 8 basamaklı bir sayıya dönüştürmek istersem. Nasıl yapılır? Demek istediğim # 424242'yi 8 basamaklı bir sayı rengine dönüştürmek? Lütfen ayrıntıları bana bildirin. Zaman ayırdığınız ve yardım ettiğiniz için teşekkür ederim.

Yanıtlar:


105

Ekstra 2 hane, renklerin şeffaflığını veya alfa kanalını tanımlamak için kullanılır.

Android, ARGB biçimini (veya örneğinizde kullandığınız gibi AARRGGBB) kullanır

Daha fazla (Android'e özgü) bilgi için Renk belgelerine bakın


8 basamağın tümünü yazdıktan sonra size renkleri gösterecek iyi bir program var mı?
anon58192932

Çok şey var: kendine saygılı herhangi bir çizim uygulaması RGBA girişini kabul eder ve ortaya çıkan rengi gösterir. Veya bu hizmeti sağlayan web sitesini bulmak için 'rgb renk seçici' veya 'rgb renk tekerleği' araması yapın. (Not: şeffaflığı tanımladıkları ve rengi etkilemedikleri için alfa rakamları gerçekten ilginç değildir)
Veger

1
Tek başına cevap, hangilerinin fazladan 2 basamak olduğunu netleştirmez. ilk iki? son iki? ortada bir yerde iki hane?
Abhishek Jain

'Ekstra 2 hane' eklendiğini gösterir (bu nedenle son iki), ancak bunu açık ve doğru yapmak için yanıtı güncelleyeceğim
Veger

46

İlk iki karakter FF, tamamen görülebilen alfa (şeffaflık) değerini temsil ediyor . Bu, aRGB olarak bilinir.


1
yani, örneğin , yalnızca düz siyah olan ile #FF000000aynı #000000mıdır?
Bruno Finger

14

8 basamaklı onaltılık bir ARGB rengidir. Normal RGB ile aynıdır ancak fazladan bir alfa kanalı sağlar.

#RRGGBB#00RRGGBBRGB'de ARGB ile aynıdır . Color.argb'ye de bir göz atın .


9

8 basamaklı bir Android HEx'e aRGB denir. aRGB değerleri tipik olarak, her biri sırasıyla Alfa, Kırmızı, Yeşil ve Mavi kanalının değerlerini temsil eden onaltılık sayıların her çifti ile 8 onaltılık basamak kullanılarak ifade edilir. Örneğin 80FFFF00,% 50,2 opak (önceden çoğaltılmamış) sarıyı temsil eder. Ondalık olarak 128 olan 80 onaltılık değer,% 50,2 alfa değerini temsil eder çünkü 128, maksimum 255 (FF onaltılık) değerinin yaklaşık% 50,2'sidir; 80FFFF00 değerini deşifre etmeye devam etmek için ilk FF, kırmızının sahip olabileceği maksimum değeri temsil eder; ikinci FF öncekine benzer ama yeşil içindir; son 00, mavinin sahip olabileceği minimum değeri temsil eder (etkin bir şekilde - mavi yok). Sonuç olarak kırmızı + yeşil sarı verir. Alfa'nın kullanılmadığı durumlarda, bu 6 basamaklı RRGGBB'ye kısaltılabilir, bu nedenle alfa üst bitlere yerleştirmek için seçilmiştir.


8

8 haneli renk alpa seviyesi ile tanımlanır

hex rengini 6 değer çift rgb 2 digit per olarak tanımladığımız hepsini çıkartalım

Kırmızı için 1. 2 hane, yeşil için 2. 2 hane ve mavi için 3. 2 hane şimdi bunun alfa seviyesini ayarlamak isterseniz 8 hane ile ARGB olarak tanımlayın, şimdi 1. 2 hane değeri alfa için ve geri kalanı RGB içindir

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.