Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.24;
Скачать: CL | DM;

Вниз

Код цвета   Найти похожие ветки 

 
nordic3   (2006-09-01 21:03) [0]

Как при нажатии кнопки в Edit записать код пиксела Image?
Собственно проблема: преобразовать TColor в string.
И причем не должно быть всяких clBlue или clRed. Только код типа $00FF00FF.


 
Anatoly Podgoretsky ©   (2006-09-01 21:07) [1]

Придется переводить TColor в RGB, ну а дальше побайтно в hex


 
nordic3   (2006-09-01 21:08) [2]

А можно по-подробнее?


 
Loginov Dmitry ©   (2006-09-01 22:24) [3]

IntToHex()


 
Anatoly Podgoretsky ©   (2006-09-02 00:09) [4]

nordic3   (01.09.06 21:08) [2]
TColor это не RGB, поэтому его надо преобразовывать.
Если надо именно так $00FF00FF, то достаточно IntToHex, но это опять же не RGB, а Integer в hex нотации. RGB будет если перевернуть. А так это Palette, B, G, R


 
Германн ©   (2006-09-02 01:31) [5]


> Anatoly Podgoretsky ©   (02.09.06 00:09) [4]
>
> nordic3   (01.09.06 21:08) [2]
> TColor это не RGB, поэтому его надо преобразовывать.

Так в сабже никто и не просил преобразовывать в RGB. Так что действительно  достаточно IntToHex(PixelColor,8);

Но вот только неясна суть замысла. Зачем его записывать в Edit?


 
Vovan#1   (2006-09-02 18:48) [6]

Начиная с какой-то версии (с 6-ой?) Delphi есть в стандартной поставке модуль GraphUtil:

uses GraphUtil;

{ Converts a TColor to a Web color constant like #FFFFFF }
function ColorToWebColorStr(Color: TColor): string;

Её код:

function ColorToWebColorStr(Color: TColor): string;
var
 RGB: Integer;
begin
 RGB := ColorToRGB(Color);
 Result := UpperCase(Format("#%.2x%.2x%.2x", [GetRValue(RGB),
   GetGValue(RGB), GetBValue(RGB)]));  { do not localize }
end;


 
nordic3   (2006-09-03 17:59) [7]

Вот более точный вопрос:
нажимаешь на кнопку, в Edit пишется код (типа $00FF00FF) цвета [5,5]пиксела из Image!
Пожалуйста, можно подробный пример!


 
PSPF2003 ©   (2006-09-03 18:05) [8]

Col := Image1.Canvas.Pixels[125, 125];
Edit1.Text := "$" + IntToHex(Col, 2);


 
Gydvin ©   (2006-09-03 20:20) [9]

а чем функции colortostring, stringtocolor не устраивают?


 
vrem   (2006-09-03 20:55) [10]

function divdw(col:longword; he:byte):byte; //col = цвет, he: 0=pal,  1=B, 2=G, 3=R, result - выбранный байт из 4-х
asm
      mov     ecx,eax
      cmp     dl,0
      je      @@1
      shl     ecx,8
      cmp     dl,1
      je      @@1
      shl     ecx,8
      cmp     dl,2
      je      @@1
      shl     ecx,8
@@1:   shld    eax,ecx,8
end;



Страницы: 1 вся ветка

Текущий архив: 2006.09.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.055 c
1-1155108859
Kiloper
2006-08-09 11:34
2006.09.24
Чем отличается в классах Free от Destroy?


15-1157438920
iii
2006-09-05 10:48
2006.09.24
Статус...


2-1157633453
fly_mer
2006-09-07 16:50
2006.09.24
чтоб кнопка на таскбаре не показывалась вообще


1-1155502154
FireMan_Alexey
2006-08-14 00:49
2006.09.24
Вопрос по поводу Hook-a


15-1157055376
Torry
2006-09-01 00:16
2006.09.24
ISDEF 2006 Start