File type: Symbol font

File type: Symbol font

Overview

A symbol font is a font for drawing with images. Each symbol-font-symbol in the font is an image.

A symbol font is referenced in stylesheets using a symbol font reference.

Splitting

A piece of text drawn with the symbol font is split into separate symbols. The list of symbols in the font is scanned from top to bottom to find matches.

If the text is for instance "W/GR" and "W/G" should be rendered as a single symbol, then it should appear before the symbol "W". Otherwise the "W" is seen as a symbol and the program continues with rendering "/GR".

Font size

A symbol font is drawn using a specific point size, similar to normal fonts. Usually the images that make up the font are given in a very high resolution, for example 200x200. This resolution could correspond to a point size of for instance 150pt.

When the symbol is drawn at for instance 12pt the image well then be scaled down to 200/150*12 == 16 pixels.

Sizes like margin, padding and font size are given in 'pixels per point'. If for instance

 text margin left: 0.1

is specified, and the symbol is rendered at 12pt, the margin will be 12*0.1 == 1.2 pixels.

Package format

A symbol font is described in a package with the .mse-symbol-font file extension. Such a package contains a data file called symbol-font that has the following properties.

Properties

Property Type Default Description
Common to all packages
mse version version required Version of MSE this symbol font is made for.
short name string file name A short name of this symbol font, currently not used by the program.
full name string file name A longer name of this symbol font, currently not used by the program.
icon filename none Filename of an icon, currently not used by the program.
version version 0.0.0 Version number of this package.
depends on list of dependencies Packages this package depends on.
Specific to symbol fonts
image font size real number 12 To what point size do the images correspond?
horizontal space real number 0 Horizontal spacing between symbols, in pixels.
vertical space real number 0 Vertical spacing between symbols, in pixels.
symbols list of symbol font symbols Symbols that make up this font.
scale text boolean false Should text be scaled down to fit in a symbol?
insert symbol menu "insert symbol" menu none A description of the menu to insert a symbol into the text.

Examples

See for instance the "magic-mana-small.mse-symbol-font" package in the MSE distribution.