hallo zusammen
ich habe ein bitmap, welches ich auf die farbe schwarz scannen will
ist es komplett schwarz return true
sonst false
so weit so gut
mir wurde scanline empfolen, da dieses relativ schnell sein soll
ich habe bereits einen guten ansatz welcher bei 15 der 16 getesteten bitmaps den richtigen wert zurückggibt
nun frage ich mich natürlich wo der fehler liegt
ich hatte kein glück bei der suche, genau wie alle anderen, die ich zu dem problem befragt hab
hier ist der ansatz:
Delphi-Quellcode:
function NotBlack(bmp: TBitmap): Boolean;
type
pRGBTripleArray = ^TRGBTripleArray;
TRGBTripleArray = Array[0..4095] Of TRGBTriple;
var
x,y: Integer;
Row: pRGBTripleArray;
begin
Result := False;
For y := 0 To bmp.Height -1 Do
Begin
Row := bmp.Scanline[y];
For x := 0 To bmp.Width -1 Do
Begin
If (Row[x].rgbtRed <> 0) Or (Row[x].rgbtGreen <> 0) Or (Row[x].rgbtBlue <> 0) Then
Begin
Result := True;
Exit;
End;
End;
End;
end;
irgentwelche vorschläge?
achja hier is das bild noch angelegt welches den falschen wert zurückgibt
danke