program New;
var
b: TBitmap;
w, h, i, ii, iii: Integer;
p: TPointArray;
begin
b := LoadBitmap('c:\tmp.jpg');
GetBitmapSize(b, w, h);
SetTargetBitmap(b);
with GetBitmapCanvas(b) do
begin
Brush.Color := clRed;
Pen.Color := clRed;
Rectangle(0, 0, w, 10);
Rectangle(0, 50, w, h);
end;
FindColorsTolerance(p, 0, 0, 10, w, 50, 300);
for i := 0 to High(p) do
for ii := 0 to 1 do
for iii := 0 to 1 do
FastSetPixel(b, p[i].x + ii, p[i].y + iii, clRed);
FindColorsTolerance(p, clWhite, 0, 10, w, 50, 50);
for i := 0 to High(p) do
for ii := -1 to 1 do
for iii := -1 to 1 do
FastSetPixel(b, p[i].x + ii, p[i].y + iii, clWhite);
FindColorsTolerance(p, 0, 0, 10, w, 50, 440);
for i := 0 to High(p) do
for ii := 0 to 1 do
for iii := 0 to 1 do
FastSetPixel(b, p[i].x + ii, p[i].y + iii, clRed);
DisplayDebugImgWindow(w, h);
SafeDrawBitmap(b, GetDebugCanvas, 0, 0);
FreeBitmap(b);
end.
Make sure you change the location of the bitmap in LoadBitmap.
My guess is it's possible.