Четыре варианта извлечения RGB компонент из цвета

Советы » Цвета и Палитра » Четыре варианта извлечения RGB компонент из цвета

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Четыре варианта извлечения RGB компонент из цвета

Какой из них быстрее - не знаю;
если проверите, то напишите мне.

Зависимости: Windows, Graphics
Автор:       Fenik, chook_nu@uraltc.ru, Новоуральск
Copyright:   Из разных источников
Дата:        4 июня 2002 г.
***************************************************** }

procedure

GetRGB(Color: TColor; var

R, G, B: Byte; Variant: Byte = 1); {Четыре варианта извлечения RGB компонент цвета; какой из них быстрее - не знаю; если проверите то напишите мне <chook_nu@uraltc.ru> } begin

case

Variant of

1: begin

R := Lo(Color); {красный} G := Lo(Color shr

8); {зелёный} B := Lo((Color shr

8) shr

8); {синий} end

; 2: begin

R := Color mod

$100; G := Color div

$100 mod

$100; B := Color div

$10000; end

; 3: begin

R := Color and

$FF; G := (Color and

$FF00) shr

8; B := (Color and

$FF0000) shr

16; end

; 4: begin

R := GetRValue(ColorToRGB(Color)); G := GetGValue(ColorToRGB(Color)); B := GetBValue(ColorToRGB(Color)); end

; end

; end

;

Другое по теме:

Категории

Статьи

Советы

Copyright © 2022 - All Rights Reserved - www.delphirus.com