Ver Mensaje Individual
  #7  
Antiguo 12-12-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Reputación: 24
seoane Va por buen camino
Bueno, una solución es corregir las coordenadas para que se ajuste a la imagen "Streachada", por ejemplo:
Código Delphi [-]
function AImgX(Imagen: TImage; x: integer): integer;
begin
  Result:= (x * Imagen.Picture.Width) div Imagen.Width;
end;

function AImgY(Imagen: TImage; y: integer): integer;
begin
  Result:= (y * Imagen.Picture.Height) div Imagen.Height;
end;

// Para dibujar en la imagen un recuadro de 100x100
Image1.Canvas.Rectangle(AImgX(Image1,10),AImgY(Image1,10),
    AImgX(Image1,110),AImgY(Image1,110));
Lo malo es que como la imagen esta deformada puede que los bordes del recuadro no aparezcan definidos, pero eso ya no lo podemos remediar.

Otra solución, es no dibujar sobre la imagen. Puedes colocar un TPaintBox del mismo tamaño encima del TImage, y dibujar sobre el.
Responder Con Cita