private boolean isMonospacedFont(@NotNull FontData fontData, boolean isScalable) {
        if (RuntimeUtils.isWindows() && fontData.getName().startsWith("@")) {
            // Discard vertical versions of fonts.
            return false;
        }
        int height = 10;
        if (!isScalable) {
            height = fontData.getHeight();
        }
        Font font = new Font(Display.getCurrent(), fontData.getName(), height, SWT.NORMAL);
        fontsGc.setFont(font);
        char ch = SWT.SPACE;
        int width = fontsGc.getAdvanceWidth(ch);
        boolean isMonospaced = true;
        for (ch++; ch < SWT.DEL && isMonospaced; ch++) {
            if (width != fontsGc.getAdvanceWidth(ch)) {
                isMonospaced = false;
            }
        }
        font.dispose();
        return isMonospaced;
    }
Get the preferred font data

@return a copy of the preferred font data
plugins/org.jkiss.dbeaver.ui.editors.hex/src/org/jkiss/dbeaver/ui/editors/binary/pref/HexPreferencesManager.java