@postya

Как уменьшить шрифт текста в лейбле,чтобы он полностью поместился в лейбле на Java?

Приложение на JavaFX.
Имеется лейбл и textarea. Текст берётся из textarea и подставляется в лейбл. В лейбле постоянно будет меняться текст. Когда текст не помещается, в конце предложения остаются 3 точки,что говорит о том,что дальше идет продолжение текста.

Как сделать так,чтобы размер шрифта текста адаптировался, чтобы текст всегда полностью помещался в лейбле?

Я нашёл такой способ, измеряю текст из textarea и задаю условие, если текст больше 500 символов, то изменяю размер шрифта лейбла на другой размер(размер задаю в пикселах)
String fontSmall ="-fx-font-size: 10px;"
          +"-fx-font-family: 'HeronSansCond SemiBold';"
          + "-fx-background-color: #fff;";

@FXML  private TextArea ta_questText;

int str = ta_questText.getText().length();

cont.getLb_previewCard().textProperty().bind(ta_questText.textProperty());

if (str >= 500) {
             cont.getLb_previewCard().setStyle(fontSmall);

           }


Здесь большой недостаток, если будет текст меньше 500 и больше ,например 200, то он будет выглдеть мелким.
Можно ли как-то задавать изменение размера шрифта как-то по-другому?
  • Вопрос задан
  • 241 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы