Zitat von
dominikkv:
Leider kommt in der Zeile
if Line[J] = Colors[K] then
eine
AV. Wo ist mein Fehler?
Mich wundert es, das der code überhautp compiliert...
Delphi-Quellcode:
if Line[J]{!}^{/!} = Colors[K] then // dereferenzieren nicht vergessen!
// ==>
if Array[1..3] of Byte = TColor then
// Das wird nichts oder?
Außerdem geht dein Array nur von 1-3 und nicht bis j (Das Bild wird wohl breiter als 3 Pixel sein
)
Line^ enthält den
RGB wert, des ersten Pixels der gescannten Reihe.
Delphi-Quellcode:
Line^[1] = Rot
Line^[2] = Grün
Line^[3] = Blau
Wenn du jetzt den nächsten Pixel haben willst, musst du den Zeiger nach jedem j-Schleifendurchlauf inkrementieren:
inc(Line);
Der Vergleich wäre dann so möglich:
if RGB(line[1],line[2],line[3]) = Colors[k] then
Ich hoffe du hast es ungefähr verstanden
Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."