Embedded Device Font Tool
Use this tool to create files containing precalculated font metrics for specific fonts. Embedded controllers must source font metrics from these files in order to correctly render text labels used in Hx/Px graphics installed on the controller.

Note that by default each installation includes a font module (fonts.jar) containing font metrics for a few standard fonts. However, they may not be the same fonts as those used in Hx/Px graphics installed on an embedded controller.
Also, note that Hx/Px graphics using multiple fonts may require that you use this tool to create a separate font metric file for each font. Multiple font files can then be bundled in a new module for ease of installation on embedded controllers.
Naturally, a best practice would be to limit font usage in Hx/Px graphics to a select few fonts that you create font files for or to limit usage only to the fonts contained in the default font module.
When should I use this tool?
Use this tool when all of the following are true:
- You are viewing an Hx/Px page that is being served up from a device using the Java compact3 profile. Confirm this by checking the Java Virtual Machine type listed in the Platform Administration view, (as shown), and:

You notice one or more text labels in your Hx/Px page are cut off or overly wide, and
The improperly sized label on your Hx/Px page is using a font that is not included in the default font module.
Default font module
By default the installation includes a fonts module that contains .font files with font metrics for the first 256 code points for the font families, point sizes, and styles listed in the following table.
| Font families | Arial, Courier New, Source Sans Pro (Zebra Theme default font), Tahoma (Lucid Theme default font) |
| Font point sizes | 8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72 |
| Font styles | Plain, Bold, Italic, Bold + Italic |
For a given font family listed in the table (such as Arial) there is a separate font file for each combination of point size plus font style. For example, a separate font file is available in the default font module for each of the following combinations:
Arial 8pt Arial 8pt Bold Arial 8pt Italic Arial 8pt Bold Italic Arial 9pt Arial 9pt Bold Arial 9pt Italic Arial 9pt Bold Italic ... etc.
Usage notes
Follow the on-screen instructions in the tool to generate the .font files you need. For best results, generate metrics using this tool on the same operating system that you will be using to view Hx/Px pages in a web browser.
My File System/User Home/shared/microFont and C:\Niagara\Niagara-4.XX.X.XX\jre\lib\fontsFinally, restart your station so that your new .font files are properly loaded.
For developers
You can package your .font files into a separate module or include them in your theme's module.
Make sure your .font files are contained in a folder named microFont that is located at the root of your module.
- You'll need to add the following
<def>block to your new module's module-include.xml file:<defs> <def name="microFont" value="YourNewModuleNameHere" /> </defs> - Add the following code to your module's module-include.xml file:
This invokes a station reboot upon module installation, ensuring that your new .font files are properly loaded.<installation noRunningStation="true"/>
Loading order
The framework will search for .font files in three locations in the following order:
From My File System/User Home/shared/microFont.
From modules that contain a microFont folder with .font files inside and a
<def/>in their module-include.xml.From the default fonts module (module://fonts/microFont).