SCAR Code:
function FindBitmapRotated(bitmap: Integer; var x, y, Angle: Integer; x1, y1, x2, y2: Integer): Boolean;
Works like FindBitmap, but rotates the bitmap after each search by 1 degree and returns the angle of the found bitmap afterwards.
function RotateBitmap(bitmap: Integer; angle: Extended): Integer;
Rotates bitmap by specified angle in radians (Pi = 180˚);
function FindBitmapMaskTolerance(mask: Integer; var x, y: Integer; x1, y1, x2, y2: Integer; Tolerance, ContourTolerance: Integer): Boolean;
Essentially it works like FindBitmapIn except it identifies using the masks/shape of an object in the bitmap. Masks are specified by the colors black and white. ContourTolerance is the minimal tolerance for color difference between shape of a mask and the background in a bitmap, It makes sure the shape differs from the background.
<-- sample mask for finding letter A in any color.
How about those? Personally, I think those would be solvable, and I would just findcolorstolerance, and compare the points but a mask would do just fine.