Thema: Delphi Funktionsweise: ScanLine

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.054 Beiträge
 
Delphi 12 Athens
 
#6

Re: Funktionsweise: ScanLine

  Alt 30. Jun 2009, 12:40
Zitat von Popov:
Der andere Nachteil liegt in der Natur von ScanLine. Du hast gefragt wie man damit ein Rechteck zeichnen kann. Unmöglich ist es nicht, aber ScanLine liefert dir nur den Zugriff auf eine horizontale Linie in der Bitmap. Für die Linie darunter mußt du erneut ScanLine aufrufen, usw. Für ein Rechteck solltest du also besser die entsprechende Funktion wählen.
wenn man das Pixelformat auf 32 Bit einstellt, oder bei 24 Bit zufällig die Länge einer Zeile dem Vielfachen von Integer entspricht,
dann könnte man sich auch mit ScanLine auf die letzte Zeile (da die Zeilen in einem BitMap intern von unten nach oben enthalten sind) eine "ScanLine" über das gesamte Bild besorgen

Delphi-Quellcode:
P: packed array[0..0] of packed record
  b, g, r: Byte;
end;

P[y * width + x].b := 255; // blauen Farbanteil setzen
aber wie gesagt, sowas geht nur unter bestimmten Voraussetzungen, wo dann alle Zeilen genau aneinandergereiht sind.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat