Описание тега argb
В компьютерной графике пиксели, кодирующие информацию о цветовом пространстве RGBA, должны храниться в памяти компьютера (или в файлах на диске) в четко определенных форматах. В наиболее распространенном формате интенсивность каждой выборки канала определяется 8 битами и размещается в памяти таким образом, что одно 32-битное целое число без знака имеет альфа-выборку в старших 8 битах, за которой следует красная выборка, зеленая sample и Blue sample в младших 8 битах. Это часто называют "ARGB": примерный макет в типичных значениях ARGB 32bpp пикселей обычно выражается с помощью 8 шестнадцатеричных цифр, причем каждая пара шестнадцатеричных цифр представляет значения альфа, красного, зеленого и синего каналов соответственно. Например, 80FFFF00 представляет 50,2% непрозрачного (без предварительного умножения) желтого цвета. 80 представляет альфа-значение 50,2%, потому что это 50,2% шестнадцатеричного FF (в десятичном, 128 составляет 50,2% от 255), первый FF представляет максимальное значение, которое может иметь красный цвет; второй FF аналогичен предыдущему, но для зеленого цвета; последний 00 представляет минимальное значение, которое может иметь синий цвет (фактически - нет синего). Следовательно, красный + зеленый дает желтый. В случаях, когда альфа не используется, ее можно сократить до 6 цифр RRGGBB, поэтому было решено поместить альфа в верхние биты. В зависимости от контекста перед шестнадцатеричными цифрами ставится 0x или знак числа (#)[1]. Непонятный аспект заключается в том, что на ЦП с прямым порядком байтов (таких как процессоры Intel или AMD) байт для B хранится по наименьшему адресу, причем байты, представляющие цвета, расположены в порядке B,G,R,A. На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA второй FF аналогичен предыдущему, но для зеленого цвета; последний 00 представляет минимальное значение, которое может иметь синий цвет (фактически - нет синего). Следовательно, красный + зеленый дает желтый. В случаях, когда альфа не используется, ее можно сократить до 6 цифр RRGGBB, поэтому было решено поместить альфа в верхние биты. В зависимости от контекста перед шестнадцатеричными цифрами ставится 0x или знак числа (#)[1]. Непонятный аспект заключается в том, что на ЦП с прямым порядком байтов (таких как процессоры Intel или AMD) байт для B хранится по наименьшему адресу, причем байты, представляющие цвета, расположены в порядке B,G,R,A. На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA второй FF аналогичен предыдущему, но для зеленого цвета; последний 00 представляет минимальное значение, которое может иметь синий цвет (фактически - нет синего). Следовательно, красный + зеленый дает желтый. В случаях, когда альфа не используется, ее можно сократить до 6 цифр RRGGBB, поэтому было решено поместить альфа в верхние биты. В зависимости от контекста перед шестнадцатеричными цифрами ставится 0x или знак числа (#)[1]. Непонятный аспект заключается в том, что на ЦП с прямым порядком байтов (таких как процессоры Intel или AMD) байт для B хранится по наименьшему адресу, причем байты, представляющие цвета, расположены в порядке B,G,R,A. На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA В случаях, когда альфа не используется, ее можно сократить до 6 цифр RRGGBB, поэтому было решено поместить альфа в верхние биты. В зависимости от контекста перед шестнадцатеричными цифрами ставится 0x или знак числа (#)[1]. Непонятный аспект заключается в том, что на ЦП с прямым порядком байтов (таких как процессоры Intel или AMD) байт для B хранится по наименьшему адресу, причем байты, представляющие цвета, расположены в порядке B,G,R,A. На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA В случаях, когда альфа не используется, ее можно сократить до 6 цифр RRGGBB, поэтому было решено поместить альфа в верхние биты. В зависимости от контекста перед шестнадцатеричными цифрами ставится 0x или знак числа (#)[1]. Непонятный аспект заключается в том, что на ЦП с прямым порядком байтов (таких как процессоры Intel или AMD) байт для B хранится по наименьшему адресу, причем байты, представляющие цвета, расположены в порядке B,G,R,A. На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA На машине с прямым порядком байтов байты располагаются в порядке A,R,G,B. Порядок байтов RGBA
В некоторых контекстах, в первую очередь OpenGL, термин "RGBA" фактически означает, что цвета хранятся в памяти так, что R находится по наименьшему адресу, G после него, B после него и A последним. Это не тот формат, который описан выше. OpenGL описывает вышеуказанный формат как "BGRA" на машине с прямым порядком байтов и "ARGB" на машине с прямым порядком байтов. Когда на канал больше 8 бит (например, 16 бит или с плавающей запятой), очень часто каналы сохраняются в порядке R,G,B,A, даже если 8-битные данные хранятся как слова ARGB.. Это часто может привести к путанице при преобразовании программного обеспечения из 8-битного в цвет с более высоким разрешением.RGBA шестнадцатеричный
В некотором программном обеспечении, созданном на машинах с прямым порядком байтов, таких как Silicon Graphics, термин "RGBA" означает, что цвет указан аналогично ARGB, но с альфа-каналом в нижних 8 битах, а не в верхних. Например, 808000FF будет красным и зеленым:50,2%, синим:0% и альфа:100%, коричневым. Следует отметить, что RGBA относительно неясен по сравнению с ARGB. Их смешение может привести к серьезным ошибкам цветопередачи. Компоновка пикселей RGBA Байты хранятся в памяти на машине с прямым порядком байтов в порядке A,B,G,R.
Это статья, скопированная с внешнего сайта.( http://en.wikipedia.org/wiki/RGBA_color_space)