PDA

Ver la Versión Completa : Dibujar lineas sobre Timage con propiedad WrapMode = Fit


el-mono
24-01-2018, 19:29:59
Hola Gente como les va.


Necesito permitir al usuario dibujar lineas a mano alzada sobre un Timage con propiedad WrapMode = Fit (conservo esa propiedad porque también quiero darle la posibilidad al usuario de redimensionar la imagen).

El problema que con esa propiedad del Timage cuando dimensiono la imagen y comienzo a dibujar sobre el canvas las lineas se dibujan siempre a varios pixeles a los costados donde apoyo el cursor.

Como puedo hacer para calcular las coordenadas y así dibujar las lineas sobre el canvas del Timage donde se apoyo el cursor ?


Utilizo en el evento Move del Timage el siguiente codigo:



img.Bitmap.Canvas.BeginScene();
img.Canvas.StrokeDash := TstrokeDash.Solid;
img.Bitmap.Canvas.Stroke.Color := Talphacolorrec.Blue;
img.Bitmap.Canvas.StrokeDash := TstrokeDash.Solid;
img.Bitmap.Canvas.StrokeThickness:= 5;
img.Bitmap.Canvas.DrawLine(PointF(X, Y), PointF(X, Y), 100, img.Bitmap.Canvas.stroke);
img.Bitmap.Canvas.EndScene();