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

Вниз

изменение палитры   Найти похожие ветки 

 
IgAn ©   (2004-01-26 09:13) [0]

Помогите, пожалуйста!
гружу файл со шрифтом, палитра такая:

0 r0 g0 b0
1 r0 g28 b0
2 r0 g56 b0
3 r0 g85 b0
4 r0 g113 b0
5 r0 g141 b0
6 r0 g170 b0
7 r0 g198 b0
8 r0 g226 b0
9 r0 g255 b0
10 r255 g255 b255
11 r4 g2 b6
12 r0 g0 b0
13 r0 g0 b0
14 r0 g0 b0
15 r0 g0 b0

хотелось бы менять цвет например с зеленого на красный.
наверное, лучше изменять палитру.
Нашел в FAQ вот это:

procedure TForm1.BitBtn1Click(Sender: TObject);
var
Palette : HPalette;
PaletteSize : Integer;
LogSize: Integer;
LogPalette: PLogPalette;
p: integer;
begin
Palette := Image1.Picture.Bitmap.Palette;
PaletteSize := 0;
if GetObject(Palette, SizeOf(PaletteSize), @PaletteSize) = 0 then Exit;
if PaletteSize = 0 then Exit;
LogSize := SizeOf(TLogPalette) + (PaletteSize - 1) * SizeOf(TPaletteEntry);
GetMem(LogPalette, LogSize);
try
with LogPalette^ do begin
palVersion := $0300; palNumEntries := PaletteSize;
GetPaletteEntries(Palette, 0, PaletteSize, palPalEntry);
// меняю зеленый на красный ?
for p:=0 to 9 do begin
palPalEntry[p].peRed := palPalEntry[p].peGreen;
palPalEntry[p].peGreen := 0;
end;
for p:=0 to 15 do begin
shape[p].Brush.Color:=RGB(palPalEntry[p].peRed,palPalEntry[p].peGreen,palPalEntry[p].peBlue);
end;
end;
Image1.Picture.Bitmap.Palette := CreatePalette(LogPalette^);
finally
FreeMem(LogPalette, LogSize);
DeleteObject(Palette);
end;
end;


А получается ерунда - все элементы палитры - черные
Может как-то по другому легче менять цвет, подскажите...


 
Igan ©   (2004-01-26 10:59) [1]

Спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
1-16387
Varg
2004-01-23 17:13
2004.02.06
вызов номера версии


14-16648
blackman
2004-01-14 09:58
2004.02.06
Как соединить два компа по USB ?


1-16405
OldJek
2004-01-22 17:46
2004.02.06
Как показать Hint над кнопкой приложения в панели задач?


1-16288
Maksss
2004-01-25 17:00
2004.02.06
ListView


14-16616
Евгыш
2004-01-15 10:18
2004.02.06
Обработка исключений