Solved. Needed SwingTerminalFontConfiguration instead of AWTTerminalFontConfiguration
/**
* get fonts from system
*/
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
Font[] allFonts = ge.getAllFonts();
ArrayList<Font> fonts = new ArrayList<>();
for (int i = 0; i < allFonts.length; i++) {
if (allFonts[i].getName().contains("Ubuntu Mono")) {
fonts.add(allFonts[i]);
}
}
/**
* resize
*/
for (int i = 0; i < fonts.size(); i++) {
fonts.set(i, fonts.get(i).deriveFont(42.0f));
System.err.println(fonts.get(i).toString());
System.err.println(getFontWidth(fonts.get(i)));
System.err.println(getFontHeight(fonts.get(i)));
}
defaultTerminalFactory.setTerminalEmulatorTitle("This is a title");
defaultTerminalFactory.setInitialTerminalSize(new TerminalSize(80, 25));
defaultTerminalFactory.setPreferTerminalEmulator(true);
SwingTerminalFontConfiguration config = SwingTerminalFontConfiguration.newInstance(fonts.toArray(new Font[0]));
defaultTerminalFactory.setTerminalEmulatorFontConfiguration(config);
terminal = defaultTerminalFactory.createTerminal();