Neodynamic ThermalLabel SDK for .NET
Fonts Overview
The Neodynamic.SDK.Printing.Font class is used with the Neodynamic.SDK.Printing.TextItem and Neodynamic.SDK.Printing.BarcodeItem objects and it determines how the characters' glyph looks like.

The Font class supports:


Native Printer Fonts (NPF)
The NPF is an abstraction on the complexity of dealing with different built-in printer fonts when printing simple text on labels while targeting both kinds of printers i.e. ZPL and EPL printers. The NPF provides you three fonts called NativePrinterFontA, NativePrinterFontB and NativePrinterFontS.

Basically, each of these fonts are provided by our SDK as TrueType (*.ttf) font files which need to be installed on the client machine where the SDK is being used. The TrueType fonts are used by our SDK when exporting labels to PDF documents or image files and by the ThermalLabelEditor component for displaying such font on items using the NPF. For printing process, the NPF TrueType files are not used as our SDK uses the built-in ZPL/EPL fonts that are internally associated to each NPF.

TIP: NPF has some limitations when comparing it to non-built in fonts, but you should use NPF whenever possible to boost the printing performance. If your text does not require any special formatting, then use a NPF for printing it.

The following table provides some info about the features that each of the NPF does support.

FEATURE

NativePrinterFontA

NativePrinterFontB

NativePrinterFontS

 

 

 

 

Font Type

Monospaced

- Scalable for ZPL

- Monospaced for EPL

Monospaced

Fixed Sizes (in pts) – Measure of the upper-case chars height

5pt, 10pt, 15pt, 20pt, and 25pt

7pt, 14pt, 21pt, 28pt, and 35pt

3pt (Only this size is allowed. Intended to be used with very small text)

Font Style

Normal

Bold

Normal

Characters Set

- All ASCII chars from 32 to 124 excluding the following chars: 92, 94 & 123

- All ASCII chars from 32 to 124 excluding the following chars: 92, 94 & 123

- ASCII chars from 65 to 90 (upper-case letters) and from 48 to 57 (digits)

Unicode Support

NO

NO

NO

Text Stretching

NO

NO

NO

Rotation

0, 90, 180 & 270 degrees only

0, 90, 180 & 270 degrees only

0, 90, 180 & 270 degrees only

Rounded Borders

NO

NO

NO

Multi-line Text

NO

NO

NO

TrueType file matching

NativePrinterFontA.ttf glyphs are almost a perfect match to both ZPL/EPL font glyphs.

NativePrinterFontB.ttf glyphs are almost a perfect match to the ZPL font glyphs.  For EPL printers, the font is very different and you should try it before going forward.

NativePrinterFontS.ttf glyphs are almost a perfect match to both ZPL/EPL font glyphs.

Char Glyph Appearance



Screen/File Rendering vs. Printing Output

When using any of the NPF, you should be aware of the following regarding what you will get on screen or file and what you will get when printing:
Installed Windows TTF Fonts
Any TrueType font installed in the client can be used with the Font class on Neodynamic.SDK.Printing.TextItem and Neodynamic.SDK.Printing.BarcodeItem objects. With these kinds of fonts you can use all the rich text features available like full Unicode support, RTL languages, text stretching, text alignments, etc.

Custom TTF Font files i.e. Non-installed fonts
The custom TTF approach has the same text features as the Installed Windows TTF fonts but do not require you install the TTF on the client system. Instead, you can deploy the TTF file with your application and use the font’s path file. It is useful if you want to use dingbats fonts which you do not want to install on the client machine before using them.