Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];

Вниз

Как преобразовать Integer Delphi цвет в Hex для PhotoShop?   Найти похожие ветки 

 
Kolan ©   (2007-12-04 10:10) [0]

Для Delphi 128 — это бордовый(Maroon). Как из этого числа получить теперь нех код 80 00 00, который обозначает то же цвет, но для PhotoShop"а?

Не программно, а так на калькуляторе — не врублюсь че на че делить&#133


 
Игорь Шевченко ©   (2007-12-04 10:11) [1]

ColorToRGB ?


 
homm ©   (2007-12-04 10:14) [2]

> Как преобразовать Integer Delphi цвет в Hex для PhotoShop

Прожуй.


> Для Delphi 128 — это бордовый(Maroon).

Нет, для дельфи 128 это $00000080.


> Как из этого числа получить теперь нех код 80 00 00

Переставить красный и синий каналы местами?


 
Kolan ©   (2007-12-04 10:19) [3]

> ColorToRGB

Получилось наоборот, там же BGR
128
|
Result := IntToHex(ColorToRGB(TColor(Val)), 6);
|
000080 получилось


 
Kolan ©   (2007-12-04 10:21) [4]


> Нет, для дельфи 128 это $00000080.

Да

В вот в фотошопе это 80 00 00


 
homm ©   (2007-12-04 10:22) [5]

> [4] Kolan ©   (04.12.07 10:21)
> В вот в фотошопе это 80 00 00

Ну дак?
Переставить красный и синий каналы местами.
В чем проблема?


 
Kolan ©   (2007-12-04 10:26) [6]


> Переставить красный и синий каналы местами.

Як? Прам в строке?


 
homm ©   (2007-12-04 10:27) [7]

Какой еше строке?


 
Kolan ©   (2007-12-04 10:37) [8]

> Какой еше строке?

Нех строке вестимо.

Короче сделал так и сё работает:
Result := Result[5]+Result[6]+Result[3]+Result[4]+Result[1]+Result[2];

Ответ найден, благодарю.


 
homm ©   (2007-12-04 10:39) [9]

> [8] Kolan ©   (04.12.07 10:37)

Ну и бардак :)


> [0] Kolan ©   (04.12.07 10:10)
> Не программно, а так на калькуляторе — не врублюсь че на
> че делить…

а тут уже строка… Ну да ладно.


 
Игорь Шевченко ©   (2007-12-04 10:41) [10]

uses
 GraphUtil

function ColorToWebColorStr(Color: TColor): string;

или

var
 RGB: Integer;
begin
 RGB := ColorToRGB(Color);
 Result := UpperCase(Format("#%.2x%.2x%.2x", [GetRValue(RGB),
   GetGValue(RGB), GetBValue(RGB)]));


 
Kolan ©   (2007-12-04 10:52) [11]


> а тут уже строка… Ну да ладно.

Ну так как я не понял че на че делить я изменил строку.


> ] Игорь Шевченко ©   (04.12.07 10:41)

Благодарю.


 
Anatoly Podgoretsky ©   (2007-12-04 10:59) [12]

Может не надо пытаться работать как с Integer, а перейти на RGB - это уже массив из трех байт, где а[0] это R и т.д.


 
Kolan ©   (2007-12-04 11:00) [13]

> Может не надо пытаться работать как с Integer,

Все, благодарю. Написал маленькую программу, сделал то что надо.


 
Dib@zol ©   (2007-12-04 11:12) [14]

Ну как всегда. Опоздал)))

function GetHTMLColor(D:DWORD):PChar;
asm
 PUSH EBX;
 PUSH ECX;
 PUSH EDX;
 PUSH EDI;

 MOV EBX, EAX;
 PUSH 9;
 CALL GetMemory;
 POP EDX;
 XOR EDX, EDX;
 XCHG EAX, EBX;
 MOV EDI, 10h;

 DEC EBX;
 MOV BYTE PTR [EBX+9], 0;

 MOV ECX, 6;
 @loop:
   IDIV EDI;
   CMP DL, 0Ah;
   JL @less;
   ADD DL, 07h;
   @less:
   ADD DL, 30h;
   MOV BYTE PTR [EBX+ECX], DL;
   XOR DL, DL;
 LOOP @loop;

 MOV AX, WORD PTR [EBX+1];
 MOV CX, WORD PTR [EBX+3];
 MOV DX, WORD PTR [EBX+5];
 MOV WORD PTR [EBX+1], DX;
 MOV BYTE PTR [EBX+3], 20h;
 MOV WORD PTR [EBX+4], CX;
 MOV BYTE PTR [EBX+6], 20h;
 MOV WORD PTR [EBX+7], AX;

 MOV EAX, EBX;
 INC EAX;

 POP EDI;
 POP EDX;
 POP ECX;
 POP EBX;
end;



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

Форум: "Начинающим";
Текущий архив: 2007.12.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.013 c
15-1196276512
NeiL
2007-11-28 22:01
2007.12.30
Cut_Image


15-1196551729
KilkennyCat
2007-12-02 02:28
2007.12.30
А бомжи голосовать имеют право?


15-1196156980
All More system
2007-11-27 12:49
2007.12.30
Тестирование работоспособности программ


15-1196339700
Leonid_P
2007-11-29 15:35
2007.12.30
PHP: получить "заголовки" EXE файла.


2-1197010103
Руслан56
2007-12-07 09:48
2007.12.30
runtime error 200 at XXXX:XXXX





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский