Перейти к содержанию
  • Регистрация
  • 0
Авторизация  
Pavel M

Подбор максимального размера шрифта TLabel

Вопрос

Подскажите более быстрый и менее затратный способ

получить максимально возможный размер шрифта 

исходя из статических размеров.TLabel

(с центрованием текста и без переноса строк)


procedure TfrmMain.MaxFontSize(xLabel: TLabel);

var
  xFntSize: Single;
  xW, xH: Single;

begin
  xW := 0;
  xH := 0;
  xFntSize := 1;

  xLabel.ResultingTextSettings.Font.Size := xFntSize;

  while (xLabel.Size.Width > xW) and (xLabel.Size.Height > xH) do

  begin
    xLabel.ResultingTextSettings.Font.Size := xFntSize;
    xFntSize := xFntSize + 1;
    xLabel.Canvas.Font.Size := xFntSize;
    xW := xLabel.Canvas.TextWidth(xLabel.Text);
    xH := xLabel.Canvas.TextHeight(xLabel.Text);
  end;
end;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...