From what I've read, fonts like Wingdings are non-unicode. But Java only works with unicode characters, right? If I try to display Wingdings I only see squares, I'm assuming because it is trying to look under the wrong mapping (ie, it doesn't know how to find the glyph for character code 0x2E). I haven't been able to see anything but the square it prints when it can't display a glyph in either a Swing element (JTextField, etc) or through drawing the text onto a JPanel with Graphics2D.drawString. I can see Wingdings in the font list of available fonts and it shows it has 226 glyphs (Font.getNumGlyphs()). Obviously, it knows there are glyphs, but is unable to display them. Is there a workaround to get the font to display fonts that are encoded with a single byte?