I have a PC notebook running Win Vista, when I first bought it, certain Chinese fonts won\'t show up, I could only see rectangles, but I played with the control setting for
Lazy version:
Arrays.asList(GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames()).contains(FONT_NAME)
java.awt.GraphicsEnvironment.getAvailableFontFamilyNames()
can give you a list of the available fonts installed on the current system. You could also use java.awt.GraphicsEnvironment.getAllFonts()
to get java.awt.Font
objects.
Then, you can use java.awt.Font.canDisplay(int)
to check whether a Unicode character can be displayed in that font (where the int
is the integer representation of the multibyte character).