Hola, se me presenta una situación en la que un TLabel debe mostrar una información pero con WordWrap en False y autoSize en True , el problema es que en un dispositivo android el texto de dicho label es mas largo que su ancho (Width), por lo que busco reducir el tamaño de la fuente en forma dinámica para que se visualice correctamente, implemento algo así pero me entra en bucle infinito:
Código Delphi
[-]
procedure TfrmPrincipal.labRecuperaDatosPaint(Sender: TObject; Canvas: TCanvas;
const ARect: TRectF);
begin
while Canvas.TextWidth((sender as TLabel).Text) >= (sender as TLabel).Width do
(sender as TLabel).Font.Size := (sender as TLabel).Font.Size - 1;
end;
No se si estoy cometiendo un error de sintaxis o mi enfoque para resolver el problema no es el correcto, si alguien paso por esto antes agradecería su ayuda. Gracias por su tiempo.