- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 Forum

Grundkurs
  »Introduktion
  »Snabbguide
  »Komponenter
  »Händelser
  »Strängar
  »Räkna med Delphi   »Egna typer
  »Selektion
  »Iteration
  »Menyer
  »Funktioner
  »Arraystrukturer

Tips & Tricks
  »Nya tips
  »Blandat
  »Databaser
  »Filer
  »Forms
  »Grafik
  »Internet
  »Komponenter
  »Matematik
  »Multimedia
  »Objekt/ActiveX
  »Skrivare
  »Strängar
  »System
  »Mest lästa tips

Artiklar
  »Delphi och ADO
  »Bygga en DLL
  »Skapa en enkel rapport
  »Hantera registret
  »Enheter, units
  »Klassen TCanvas
  »Använd LookUp Controls

 Nya tips
 Lägg till tips
 Delphilänkar
 Gästbok

 

Applicera ett negativt filter på en bitmap Kategori: Grafik
Inlagt: 2005-04-24
Läst: 1014
Inlagt av: Staffan Berg
Beskrivning
Detta exempel gör om en angiven bitmapbild till en negativ motsvarighet.
Kod
var 
 b: tbitmap; 
 s: string ; 
 x, y: Integer; 
 p: pbytearray; 
 image1: TImage; 
  
procedure LoadBitmap; 
begin 
 if opendialog1.Execute then 
 begin 
  b := tbitmap; 
  s := opendialog1.FileName; 
  b.loadfromfile(s); 
  image1.Canvas.draw(0,0,b); 
 end; 
end; 
 
procedure ApplyNegativeFilter; 
begin 
 image1.Height := b.Height; 
 image1.Width := b.Width; 
 for y := 0 to b.Height - 1 do 
 begin 
  p := b.scanline(y); 
  for x := 0 to b.Width - 1 do 
  begin 
   (([image1.Canvas.pixels[x, y] := rgb(255 - (p[x * 3) - 4]), 255 - (p[x * 3) - 2]), 
    255 - (p[x * 3) - 3])); 
   end; 
  end; 
end; 
 

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -