2016-11-05 5 views
0

У меня есть программа JavaFX, которая использует метки. Я загрузил два пользовательских шрифта, и я хочу сделать переключатель ярлыков между двумя шрифтами.Почему мой шрифт не обновляется, когда я вызываю label.setFont()?

Однако, когда я звоню label.setFont(font2), шрифт не изменяется. Я переключил порядок, чтобы убедиться, что оба шрифта работают, и они это делают. Ошибок не возникает, поэтому я не уверен, в чем проблема.

I Googled around, но я не мог найти других людей, имеющих эту проблему. Я обнаружил, что некоторые люди не могут загружать пользовательские шрифты вообще, но у каждого, казалось, не было проблем с переключением на рабочий шрифт.

ответ

0

Проблема оказалась с самим шрифтом. Я продублировал существующий шрифт с помощью FontForge и внес некоторые незначительные изменения в него. Однако я не изменил шрифт «Имя шрифта», «Фамилия» или «Уникальный идентификатор».

Из-за этого функция setFont не работает. Я предполагаю, что он проверяет уникальные идентификаторы двух шрифтов и фактически не переключает шрифт, если они совпадают. Мне кажется, что это плохое/плохое поведение, хотя основная проблема заключалась в том, что я не сохранил второй шрифт должным образом.

Смежные вопросы