Determining if a font exists

I have a screen that only works with a fairly narrow font. Two of them exist but aren’t always installed on every system. Either Liberation Sans Narrow or Arial Narrow will work at the larger sizes with my screen, one is installed with Libre Office and the other with Microsoft Office.

Is there a good way of determining which fonts exist on the system past iterating over all of them? I tried to use toFont() with a fallback variable, but it accepted on fonts that didn’t exist on the system and didn’t give me the fallback value. I want to try both of those, then fall back to the smaller size of plain Arial if those two don’t exist.

You should really only use the 5 logical fonts that Java provides:

Anything other than those is a risk, as it might not exist on the target computers. You can re-map what physical fonts these logical fonts correspond to on a machine-by-machine basis by editing the font config files.