Para pasar de las coordenadas del evento del raton a las de la imagen puedes usar algo como esto:
Código Delphi
[-]
function RatonAImagenX(Imagen: TImage; x: integer): integer;
begin
Result:= (x * Imagen.Picture.Width) div Imagen.Width;
end;
function RatonAImagenY(Imagen: TImage; y: integer): integer;
begin
Result:= (y * Imagen.Picture.Height) div Imagen.Height;
end;
Es una solucion, otra es cambiar el tamaño de la imagen por codigo en vez de usar la propiedad strech. Esto tiene el inconveniente de que si la imagen luego se quiere guardar, se guardara con el tamaño cambiado. Usa la que mas te convenga.
Código Delphi
[-]
procedure Estrechame(Imagen: TImage);
var
Bitmap: TBitmap;
begin
Bitmap:= TBitmap.Create;
try
Bitmap.Width:= Imagen.Width;
Bitmap.Height:= Imagen.Height;
Bitmap.Canvas.StretchDraw(Bitmap.Canvas.ClipRect,Imagen.Picture.Graphic);
Imagen.Picture.Assign(Bitmap);
finally
Bitmap.Free;
end;
end;