Интернет. Программы. Windows. Операционные системы. Игры. Восстановление

Что такое хостинг Какой хостинг самый лучший

Настройка интернета и Wi-Fi сети Смайл: особенности подключения оборудования Настройка соединения PPPoE на маршрутизаторе

Ускоренный Яндекс Браузер — это реально

Как подключить кнопку включения к материнской плате

Explay представляет новый смартфон Neo

Проблема сбоя шифрования на Android Сбой шифрования андроид что

При загрузке файлов из DropBox ошибка «Zip-файл слишком большой Основы использования Dropbox

Установка Microsoft SQL Server

Не загружается Windows после установки обновлений

AirDrop — быстрая передача файлов между iPhone и iPad Airdrop не видит iphone

Программирование микроконтроллеров AVR — первый шаг

Как начинающему дизайнеру создать себе портфолио

Как вставлять смайлики в Инстаграм – все доступные способы

Какое напряжение на usb выходе

Total Commander скачать бесплатно русская версия Скачать total commander последнюю версию на русском

Расширение файла RGB. Цветовая модель RGB в CSS Функциональный формат записи цвета в CSS

Недавно я написал код, чтобы сделать именно это, на основе универсального преобразователя цветового формата проекта ScummVM .

Ответ на другой вопрос здесь, на StackOverflow, и хотя вопрос, на мой взгляд, не является дубликатом, я думаю, ответ есть, поэтому я просто свяжусь с ним:

Помните, я точно не знаю, как множитель для каждого фактора работает в формате 5-6-5. Является ли 6-битный компонент просто более точным? В этом случае автоматическая система преобразования выполнит эту работу.

В любом случае, с приведенным выше кодом, этот пример должен наилучшим образом удовлетворить ваши потребности. Здесь он используется для преобразования пользовательского формата 5-5-5-1 RGBA:

//bytes 84 21 ==> 0x8421 (BE) ==bin==> 1000 0100 0010 0001 ==split==> 10000 10000 10000 1 ==dec==> 16 16 16 1 (RGBA) ==adjust==> 128 128 128 255 // values in constructor are: bytes per pixel, amount of bits and amount to shift for getting R, G, B and A components, and data endianness. private static PixelFormatter SixteenBppFormatter = new PixelFormatter(2, 5, 11, 5, 6, 5, 1, 1, 0, false); protected static Byte Convert16bTo32b(Byte imageData, Int32 startOffset, Int32 width, Int32 height, ref Int32 stride) { Int32 newImageStride = width * 4; ; Byte newImageData = new Byte; for (Int32 y = 0; y < height; y++) { for (Int32 x = 0; x < width; x++) { Int32 sourceOffset = y * stride + x * 2; Int32 targetOffset = y * newImageStride + x * 4; Color c = SixteenBppFormatter.GetColor(imageData, startOffset + sourceOffset); PixelFormatter.Format32BitArgb.WriteColor(newImageData, targetOffset, c); } } stride = newImageStride; return newImageData; }

Все, что вам нужно сделать, это определить свой собственный PixelFormatter с правильным распределением битов для формата 5-6-5.

Вам действительно нужно заглянуть в Bitmap.LockBits() , чтобы получить исходные 16-битные данные из изображения и записать эти данные в новое 32-битное изображение ARGB. Моя функция BuildImage , упомянутая в этом ответе , должна показать, как обрабатывать запись. Метод чтения на самом деле намного проще:

///

/// Gets the raw bytes from an image. /// /// The image to get the bytes from. /// Stride of the retrieved image data. /// The raw bytes of the image public static Byte GetImageData(Bitmap sourceImage, out Int32 stride) { BitmapData sourceData = sourceImage.LockBits(new Rectangle(0, 0, sourceImage.Width, sourceImage.Height), ImageLockMode.ReadOnly, sourceImage.PixelFormat); stride = sourceData.Stride; Byte data = new Byte; Marshal.Copy(sourceData.Scan0, data, 0, data.Length); sourceImage.UnlockBits(sourceData); return data; }

Обратите внимание, что во всех ситуациях, когда вы редактируете байты необработанных изображений, разница между "шагами" и "шириной". Во многих форматах одна строка пикселей в изображении дополняется следующим кратным четырем байтам, поэтому вы не можете просто читать и обрабатывать его как массив, предполагающий все данные изображения; эти прописные байты будут очень быстрыми. Как показано в моем примере кода для преобразования моего формата 16bpp в ARGB, вам действительно нужно делать это по очереди, и в каждой строке убедитесь, что вы используете только данные, которые все еще находятся в диапазоне (ширина * байты на пиксель).

Я заметил, что для всех функций, которые могут изменить шаг, рекомендуется указать его как ref .

RGB модель описывает излучаемые цвета. Она основана на трёх основных (базовых) цветах: красный (Red), зелёный (Green) и синий (Blue). RGB-модель можно назвать "родной" для дисплея. Остальные цвета получаются сочетанием базовых. Цвета такого типа называются аддитивными.

Из рисунка видно, что сочетание зелёного и красного дают жёлтый цвет, сочетание зелёного и синего - голубой, а сочетание всех трёх цветов - белый. Из этого можно сделать вывод о том, что цвета в RGB складываются субтрактивно.

Основные цвета взяты из биологии человека. То есть, эти цвета основаны на физиологической реакции человеческого глаза на свет. Человеческий глаз имеет фоторецептор клеток, реагирующих на наиболее зеленый (М), желто-зеленый (L) и сине-фиолетовый (S) света (максимальная длин волн от 534 нм, 564 нм и 420 нм соответственно). Человеческий мозг может легко отличить широкий спектр различных цветов на основе различий в сигналах, полученных от трех волн.

Наиболее широко RGB цветовая модель используется в ЖК или плазменных дисплеях, таких как телевизор или монитор компьютера. Каждый пиксель на дисплее может быть представлен в интерфейсе аппаратных средств (например, графические карты) в качестве значений красного, зеленого и синего. RGB значения изменяются в интенсивности, которые используются для наглядности. Камеры и сканеры также работают в том же порядке, они захватывают цвет с датчиками, которые регистрируют различную интенсивность RGB на каждый пиксель.

В режиме 16 бит на пиксель, также известном как Highcolor, есть либо 5 бит на цвет (часто упоминается как 555 режим) или с дополнительным битом для зеленого цвета (известен как 565 режим). Дополнен зеленый цвет из-за того, что человеческий глаз имеет способность выявлять больше оттенков зеленого, чем любого другого цвета.

RGB значения, представленные в режиме 24 бит на пиксель (bpp), известном также под именем Truecolor, обычно выделяется три целых значения между 0 и 255. Каждое из этих трех чисел представляет собой интенсивность красного, зеленого и синего соответственно.

В RGB - три канала: красный, синий и зелёный, т.е. RGB - трёхканальная цветовая модель. Каждый канал может принимать значения от 0 до 255 в десятичной или, что ближе к реальности, от 0 до FF в шестнадцатеричной системах счисления. Это объясняется тем, что байт, которым кодируется канал, да и вообще любой байт состоит из восьми битов, а бит может принимать 2 значения 0 или 1, итого 28=256. В RGB, например, красный цвет может принимать 256 градаций: от чисто красного (FF) до чёрного (00). Таким образом несложно подсчитать, что в модели RGB содержится всего 2563 или 16777216 цветов.

В RGB три канала, и каждый кодируется 8-ю битами. Максимальное, FF (или 255) значение даёт чистый цвет. Белый цвет получается путём сочетания всех цветов, точнее, их предельных градаций. Код белого цвета = FF(красный) + FF(зелёный) + FF(синий). Соответственно код чёрного = 000000. Код жёлтого = FFFF00, пурпурного = FF00FF, голубого = 00FFFF.

Также есть еще 32 и 48 битные режимы отображения цветов.

RGB не используется для печати на бумаге, вместо нее существует CMYK-цветовое пространство.

CMYK - это цветовая модель используемая в цветной печати. Цветовая модель является математической моделью для описания цветов целыми числами. CMYK модель построена на голубом, пурпурном, желтом и черном цветах.

HEX / HTML

Цвет в формате HEX - это ни что иное, как шестнадцатеричное представление RGB.

Цвета представляются в виде трёх групп шестнадцатеричных цифр, где каждая группа отвечает за свой цвет: #112233, где 11 - красный, 22 - зелёный, 33 - синий. Все значения должны быть между 00 и FF.

Во многих приложениях допускается сокращённая форма записи шестнадцатеричных цветов. Если каждая из трёх групп содержит одинаковые символы, например #112233, то их можно записать как #123.

  1. h1 { color: #ff0000; } /* красный */
  2. h2 { color: #00ff00; } /* зелёный */
  3. h3 { color: #0000ff; } /* синий */
  4. h4 { color: #00f; } /* тот же синий, сокращённая запись */

RGB

Цветовое пространство RGB (Red, Green, Blue) состоит из всех возможных цветов, которые могут быть получены путём смешивания красного, зелёного, и синего. Эта модель популярна в фотографии, телевидении, и компьютерной графике.

Значения RGB задаются целым числом от 0 до 255. Например, rgb(0,0,255) отображается как синий, так как синий параметр установлен в его самое высокое значение (255), а остальные установлены в 0.

Некоторые приложения (в частности веб-браузеры) поддерживают процентную запись значений RGB (от 0% до 100%).

  1. h1 { color: rgb(255, 0, 0); } /* красный */
  2. h2 { color: rgb(0, 255, 0); } /* зелёный */
  3. h3 { color: rgb(0, 0, 255); } /* синий */
  4. h4 { color: rgb(0%, 0%, 100%); } /* тот же синий, процентная запись */

Цветовые значения RGB поддерживаются во всех основных браузерах.

RGBA

С недавних пор современные браузеры научились работать с цветовой моделью RGBA - расширением RGB с поддержкой альфа-канала, который определяет непрозрачность объекта.

Значение цвета RGBA задается в виде: rgba(red, green, blue, alpha). Параметр alpha - это число в диапазоне от 0.0 (полностью прозрачный) до 1.0 (полностью непрозрачный).

  1. h1 { color: rgb(0, 0, 255); } /* синий в обычном RGB */
  2. h2 { color: rgba(0, 0, 255, 1); } /* тот же синий в RGBA, потому как непрозрачность: 100% */
  3. h3 { color: rgba(0, 0, 255, 0.5); } /* непрозрачность: 50% */
  4. h4 { color: rgba(0, 0, 255, .155); } /* непрозрачность: 15.5% */
  5. h5 { color: rgba(0, 0, 255, 0); } /* полностью прозрачный */

RGBA поддерживается в IE9+, Firefox 3+, Chrome, Safari, и в Opera 10+.

HSL

Цветовая модель HSL является представлением модели RGB в цилиндрической системе координат. HSL представляет цвета более интуитивным и понятным для восприятия образом, чем типичное RGB. Модель часто используется в графических приложениях, в палитрах цветов, и для анализа изображений.

HSL расшифровывается как Hue (цвет/оттенок), Saturation (насыщенность), Lightness/Luminance (светлота/светлость/светимость, не путать с яркостью).

Hue задаёт положение цвета на цветовом круге (от 0 до 360). Saturation является процентным значением насыщенности (от 0% до 100%). Lightness является процентным значением светлости (от 0% до 100%).

  1. h1 { color: hsl(120, 100%, 50%); } /* зелёный */
  2. h2 { color: hsl(120, 100%, 75%); } /* светло-зелёный */
  3. h3 { color: hsl(120, 100%, 25%); } /* тёмно-зелёный */
  4. h4 { color: hsl(120, 60%, 70%); } /* пастельный зеленый */

HSL поддерживается в IE9+, Firefox, Chrome, Safari, и в Opera 10+.

HSLA

По аналогии с RGB/RGBA, для HSL имеется режим HSLA с поддержкой альфа-канала для указания непрозрачности объекта.

Значение цвета HSLA задается в виде: hsla(hue, saturation, lightness, alpha). Параметр alpha - это число в диапазоне от 0.0 (полностью прозрачный) до 1.0 (полностью непрозрачный).

  1. h1 { color: hsl(120, 100%, 50%); } /* зелёный в обычном HSL */
  2. h2 { color: hsla(120, 100%, 50%, 1); } /* тот же зелёный в HSLA, потому как непрозрачность: 100% */
  3. h3 { color: hsla(120, 100%, 50%, 0.5); } /* непрозрачность: 50% */
  4. h4 { color: hsla(120, 100%, 50%, .155); } /* непрозрачность: 15.5% */
  5. h5 { color: hsla(120, 100%, 50%, 0); } /* полностью прозрачный */

CMYK

Цветовая модель CMYK часто ассоциируется с цветной печатью, с полиграфией. CMYK (в отличие от RGB) является субтрактивной моделью, это означает что более высокие значения связаны с более тёмными цветами.

Цвета определяются соотношением голубого (Cyan), пурпурного (Magenta), жёлтого (Yellow), с добавлением чёрного (Key/blacK).

Каждое из чисел, определяющее цвет в CMYK, представляет собой процент краски данного цвета, составляющей цветовую комбинацию, а точнее, размер точки растра, выводимой на фотонаборном аппарате на плёнке данного цвета (или прямо на печатной форме в случае с CTP).

Например, для получения цвета «PANTONE 7526» следует смешать 9 частей голубой краски, 83 частей пурпурной краски, 100 - жёлтой краски, и 46 - чёрной. Это можно обозначить следующим образом: (9,83,100,46). Иногда пользуются такими обозначениями: C9M83Y100K46, или (9%, 83%, 100%, 46%), или (0,09/0,83/1,0/0,46).

HSB / HSV

HSB (также известна как HSV) похожа на HSL, но это две разные цветовые модели. Они обе основаны на цилиндрической геометрии, но HSB/HSV основана на модели «hexcone», в то время как HSL основана на модели «bi-hexcone». Художники часто предпочитают использовать эту модель, принято считать что устройство HSB/HSV ближе к естественному восприятию цветов. В частности, цветовая модель HSB применяется в Adobe Photoshop.

HSB/HSV расшифровывается как Hue (цвет/оттенок), Saturation (насыщенность), Brightness/Value (яркость/значение).

Hue задаёт положение цвета на цветовом круге (от 0 до 360). Saturation является процентным значением насыщенности (от 0% до 100%). Brightness является процентным значением яркости (от 0% до 100%).

XYZ

Цветовая модель XYZ (CIE 1931 XYZ) является чисто математическим пространством. В отличие от RGB, CMYK, и других моделей, в XYZ основные компоненты являются «мнимыми», то есть вы не можете соотнести X, Y, и Z с каким-либо набором цветов для смешивания. XYZ является мастер-моделью практически всех остальных цветовых моделей, используемых в технических областях.

LAB

Цветовая модель LAB (CIELAB, «CIE 1976 L*a*b*») вычисляется из пространства CIE XYZ. При разработке Lab преследовалась цель создания цветового пространства, изменение цвета в котором будет более линейным с точки зрения человеческого восприятия (по сравнению с XYZ), то есть с тем, чтобы одинаковое изменение значений координат цвета в разных областях цветового пространства производило одинаковое ощущение изменения цвета.

У вас есть проблема с открытием.RGB-файлов? Мы собираем информацию о файловых форматах и можем рассказать для чего нужны файлы RGB. Дополнительно мы рекомендуем программы, которые больше всего подходят для открытия или конвертирования таких файлов.

Для чего нужен файловый формат.RGB?

Производное от стандартного обозначения аддитивной цветовой модели RGB (красный, зеленый, синий), расширение .rgb связано с типом файлов "Цветное растровое изображение RGB SGI" - частью более широкого формата файлов изображений SGI (SGI Image File Format). Ныне прекратившая свою деятельность, компания SGI (первоначально Silicon Graphics) была пионером в области высокопроизводительных графических станций на базе Unix и разработала собственный общий растровый формат. Была опубликована полная спецификация растрового формата SGI.

Файл .rgb представляет собой цветное растровое изображение RGB (24-битный цвет) в формате SGI. Помимо несжатого режима формат SGI также предусматривает возможность RLE-сжатия (Run Length Encoding - Групповое кодирование). В одном файле .rgb может находиться одно растровое изображение.



RGB-файлы SGI распознаются и поддерживаются большинством основных графических редакторов и программ для просмотра в большей части пользовательских сред. Помимо .rgb растровые изображения SGI могут иметь другие расширения, а именно .rgb a (32-битные RGBA-изображения) и .sgi (общее расширение).

В аналогичном качестве расширение .rgb может иногда встречаться применительно к редкому типовому формату цветных растровых изображений Q0 (RGB, 24-битный цвет). Этот формат также распознается и поддерживается большинством основных графических просмотрщиков/редакторов.

Программы для открытия или конвертации RGB файлов

Вы можете открыть файлы RGB с помощью следующих программ: 

Самый удобный, распространенный, универсальный способ указания цвета - RGB. RGB это аббревиатура (Red Green Blue), что означает: красный, зеленый, синий – основные цвета, путем комбинирования которых получаются все остальные цвета.

Цвет при помощи RGB можно устанавливать несколькими способами, далее подробно про каждый.

Функциональный формат записи цвета в CSS

Общий вид функционального формата: rgb(цвет) , где «цвет», это комбинация из трех целых чисел (от 0 до 255) или трех процентных значений (от 0% до 100%), перечисленных через запятую. Далее несколько примеров.

Rgb(255, 255, 255) /* белый цвет */
rgb(0, 0, 0) /* черный цвет */
rgb(255, 0, 0) /* красный цвет */

Rgb(100%, 100%, 100%) /* белый цвет */
rgb(0%, 0%, 0%) /* черный цвет */
rgb(100%, 0%, 0%) /* красный цвет */

После rgb и перед (нет пробела!

Теперь давайте сделаем цвет текста заголовка каким-то рандомным цветом, например, rgb(222, 14, 100) , это какой-то розовый или фиолетовый цвет. Далее пример применения.

H1 {
color: rgb(222, 14, 100);
}

А теперь при помощи процентных значений и RGB создадим пару оттенков зеленого. Это пример 4.

Пример 4, CSS код

P.one { color: rgb(0%, 20%, 0%); }
p.two { color: rgb(0%, 40%, 0%); }
p.three { color: rgb(0%, 60%, 0%); }
p.four { color: rgb(0%, 80%, 0%); }
p.five { color: rgb(0%, 100%, 0%); }

Пример 4, HTML код

Зеленый


Зеленый


Зеленый


Зеленый


Зеленый

Кстати, процентные числа можно писать дробные, например, rgb(40.2%, 22.34%, 12%) , так цвет будет более точный.

И что же произойдет, если мы выйдем за рамки диапазона значений? Ничего особенного не будет, просто значения будут интерпретированы к ближайшим границам (0% или 100%, 0 или 255). Далее пример пятый.

Rgb(200%, 3100%, 101%) /* будет rgb(100%, 100%, 100%) */
rgb(-200%, 0%, 12%) /* будет rgb(0%, 0%, 12%) */
rgb(257, -130, 212) /* будет rgb(255, 0, 212) */

Допустим, у нас есть следующий CSS код: rgb(12%, 96%, 43%) и нам нужно перевести процентные значения в целые. Это делается очень просто, нужно умножить каждый уровень на 255, а потом разделить на 100, в итоге получим rgb(30.6, 244.8, 109.65) , после мы округляем по правилам математики и получаем желанное: rgb(31, 245, 110) .

Шестнадцатеричный формат записи цвета в CSS

Я чаще всего использую именно шестнадцатеричный формат, просто он короче. Далее пример.

P { color: #FFFFFF; } /* белый цвет текста */
p { color: #000000; } /* черный цвет текста */
p { color: #FF0000; } /* красный цвет текста */

Отличий от RGB почти нет. Указывается три цвета RRGGBB в диапазоне от 00 до FF (FF это 255 в десятичной системе). Как видите, между числами и буквами нет пробелов и прочих знаков (вторая причина, почему мне этот формат больше нравится), и шестнадцатеричный код начинается с решетки (#). Кстати, шестнадцатеричный формат называют HEX форматом. Далее пример трех одинаковых цветов, которые написаны тремя способами.

Вам также будет интересно:

Действующие промокоды для «Деливери Клаб Условия бонусной программы в Delivery Club
Деливери Клаб представляет собой проект, при помощи которого можно не просто заказать любую...
Самодельный k line адаптер для диагностики
Информация, изложенная выше (как сделать диагностику автомобиля самому) – это лишь...
Как преобразовать EML файл в PDF файл Как открыть файл eml в windows 8
Файл EML является файловым форматом, который был разработан корпорацией Майкрософт для...
Новый телевизор tcl производитель
Не так уж и часто можно встретить на сегодняшний день телевизоры TCL. Отзывы указывают на...
Что значит в Вайбере статус:
Вайбер несомненно является одной из самых популярных и востребованных программ для общения...