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

Вниз

Преобразование   Найти похожие ветки 

 
niko4543   (2003-06-22 17:59) [0]

Привет всем.
Подскажите пожайлуста как сделать следующее.
Нужноо чтобы вот например открыть BMP файл(или другой формат) чтобы произошла его зуммирование под холст размером 1280х1024,
а потом при нажатии на кнопку произошло разделение на три оттенка:
1- выбрать из него Красные оттенки
2- Зеленые
3- Синие.
Вот такой вопрос есле кто нить что знает подскажите пожайлуста.
Заранее спасибо.


 
Fenik ©   (2003-06-22 20:54) [1]

"зуммирование" - StretchBlt


"разделение на три оттенка":

Bitmap - исходный рисунок, который ты зуммировал;
Bmp1, Bmp2, Bmp3 - рисунки для оттенков, такого же размера, как и Bitmap;
У всех PixelFormat = 24Bit;

var x, y, n: Integer;
p, p1, p2, p3: pByteArray;
begin
for y := 0 to Bitmap.Height - 1 do begin
p := Bitmap.ScanLine[y];
p1 := Bmp1.ScanLine[y]; //Синий
p2 := Bmp2.ScanLine[y]; //Зелёный
p3 := Bmp3.ScanLine[y]; //Красный
for x := 0 to Bitmap.Width - 1 do begin
n := x*3;

p1[n] := p[n];
p1[n+1] := 0;
p1[n+2] := 0;

p2[n] := 0;
p2[n+1] := p[n+1];
p2[n+2] := 0;

p3[n] := 0;
p3[n+1] := 0;
p3[n+2] := p[n+2];
end;
end;
end;

Писал без Delphi: на ошибки не кричать.



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

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

Наверх




Память: 0.46 MB
Время: 0.022 c
3-73997
Nikitos
2003-09-30 19:53
2003.10.23
истоория изменений


14-74398
Zhouck
2003-10-06 12:39
2003.10.23
Фигня с телетекстом


14-74403
isko
2003-10-06 08:28
2003.10.23
найдёшь или нет


14-74445
Карлсон
2003-10-03 15:12
2003.10.23
защита avi от копирования с носителя


1-74283
KSergey
2003-10-10 18:10
2003.10.23
Default Button