JTextArea default font very small in Windows

If you want a consistent look then use the Nimbus or Metal look and feel instead of the OS default. That will also allow you to tweak any settings. Plus I personally I think the Nimbus Look and Feel is much smoother looking than the others.


Instead of creating new font, it is better to derive existing font, because this way you'll save the font set by platform look and feel, and it may also avoid problems with unicode characters:

textArea.setFont(textArea.getFont().deriveFont(12f)); // will only change size to 12pt

Here's a solution that you can use to change all JTextAreas at once instead of using setFont() every time you add new text area:

UIManager.getDefaults().put("TextArea.font", UIManager.getFont("TextField.font"));

Call this on start of your application, after setting the Look and Feel.

Most L&Fs use the same font for JTextArea and JTextField, it's strange that Windows doesn't.