Как указать резервные шрифты в Java2D/Graphics2D

Я использую g.drawString(str, x, y) для рисования строки с помощью Graphics2D объекта g. Текущий шрифт g не покрывает все символы str (у меня там есть, например, китайские символы). В Mac OS X, похоже, автоматически используется запасной шрифт, но не в Windows, где вместо нужных символов появляются черные квадратные контуры.

  • Почему поведение отличается в зависимости от платформы?
  • Как указать запасной шрифт (или несколько запасных шрифтов) в случае отсутствия символов?

(Например, один из хороших шрифтов там. )

Update/More Info

Итак, исходный шрифт, который не поддерживает все символы, не является одним из логических шрифтов JVM, а является встроенным шрифтом, который поставляется с моим приложением и был получен с помощью Font.createFont(). Поэтому добавление шрифтов в папку lib/fonts/fallback JRE здесь не работает.

8
задан Jean-Philippe Pellet 28 February 2012 в 16:40
поделиться