У меня есть некоторый Swing-код (написанный в 1.6 для 1.6), который специально устанавливает шрифт в текстовой области на Courier, но в некоторых системах Windows вместо этого он отображается как Arial (по умолчанию для системы?). Означает ли это, что в системе отсутствует шрифт? Каково поведение Java, когда она не может найти нужный шрифт? Жаловаться? Это регистрирует это где-нибудь? Это немедленно прибегает к использованию системы по умолчанию? Отличается ли поведение между версиями JVM 1.4 / 1.5 / 1.6?
Кто-нибудь еще сталкивался с этим? Я был очень удивлен, увидев в пользовательском интерфейсе что-то отличное от того, что я жестко ввел в приложение, и только на некоторых системах. Основная проблема заключается в том, что мне нужен моноширинный стиль шрифта для этого конкретного случая, а Arial не моноширинный. Есть ли способ указать запасной вариант, если определенный шрифт не найден? Что-то вроде:
если шрифт доступен, используйте "Курьер"
еще использовать "моноширинный"
???