Вниз
Скачать: CL | DM;

Ггрфика. Image.   Найти похожие ветки 

← →
Artur   (2003-11-12 16:23) [0]

Кто нибудь занет процедуру, как можно в Image отобразить негатив просматриваемого рисунка? Заранее спасибо!


← →
Darthman ©   (2003-11-12 16:35) [1]

А что так сложно сделать?
Pixel:=;АААААААА XOR Pixel; И так со всеми. Вот и негатив.


← →
Darthman ©   (2003-11-12 16:35) [2]

Прошу прощения, конечно же Pixel:=$FFFFFFFF XOR Pixel; :)


← →
Fenik ©   (2003-11-12 17:03) [3]

procedure InvertBitmap(Bitmap: TBitmap);
type TRGB = record
      B, G, R: Byte;
    end;
    pRGB = ^TRGB;
var x, y: Integer;
   Dest: pRGB;
begin
 Bitmap.PixelFormat := pf24Bit;
 for y := 0 to Bitmap.Height - 1 do begin
   Dest := Bitmap.ScanLine[y];
   for x := 0 to Bitmap.Width - 1 do begin
     with Dest^ do begin
       R := 255 - R;
       G := 255 - G;
       B := 255 - B;
     end;
     Inc(Dest);
   end;
 end;
end;


← →
miek ©   (2003-11-12 18:17) [4]

Да не парьте мОзги человеку.

Есть такая процедура в WinAPI - InvertRect.

Все, хватит флейма.


← →
Fenik ©   (2003-11-13 09:36) [5]

Моя процедура быстрее :-))


← →
miek ©   (2003-11-13 21:34) [6]

Гонишь.


← →
Fenik ©   (2003-11-22 22:44) [7]

А ты проверь.


← →
miek ©   (2003-11-22 23:07) [8]

Если б не проверял, не сказал бы. Я сравнивал со своим циклом, оптимизированным под параллельность (по 2,4,8 DWORD-ов за итерацию) и получил вариант только на 15-20% более быстрый, чем InvertRect. Даже MMX не поможет.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
8-1068910424
Artur
2003-11-15 18:33
2004.03.28
Image. (Rotate)


14-1078217556
Goida
2004-03-02 11:52
2004.03.28
Плохой Visual Studio :((


1-1078651021
Чубака
2004-03-07 12:17
2004.03.28
Сообщения


3-1076937543
Jony
2004-02-16 16:19
2004.03.28
Кнопка ebsUpDownEh в DBEditEh


7-1073845084
MagaSoft
2004-01-11 21:18
2004.03.28
Работа с прокси!




   Наверх