PGE Raster Font Structure: -Header.font.ini --font-map-1 --sprite-1 --font-map-2 --sprite-2 ... XXX.font.ini - Definition of the raster font ```ini ; Main section of the font [font] tables = 4 ; Count of font maps name = "font1" ; title of the font ttf-outlines = true ; draw black outline in TTF-fallback drawn letters ttf-outlines-colour = 0x000000FF ; The color of the outline at the TTF fallback ttf-fallback = "FontName Regular" ; The name of the preferred TTF font if available ttf-size = 14 ; The glyph size of the TTF fallback ttf-fallback-1x = "SmallFont Regular" ; The name of the preferred TTF font on platforms with a low screen resolution ttf-size-1x = 14 ; The glyph size of the TTF fallback on platforms with a low screen resolution space-width = 16 ; With of the white space character in pixels interletter-space = 2 ; Inter-letter space in pixels newline-offset = 20 ; Offset between of the lines in pixels glyph-offset-x = 0 ; Horizontal pixel offset of glyphs glyph-offset-y = 0 ; Vertical pixel offset of glyphs ; List of font maps are used in this font. ; Each font map includes one sprite - a picture contains drawn letters ; and map of cells in that image in dependence on UTF8 character [tables] table1 = "font1_en.ini" ; name of each INI file can have anything table2 = "font1_ru.ini" table3 = "font1_misc.ini" table4 = "font1_misc2.ini" ; ... tableN = "NNN.ini" ``` Font map (Must be saved in UTF-8 format!!!) ```ini ; ;Font map ; ;Defines the available characters which can be printed ; is possible to have multiple font textures [font-map] texture = font1_ru.png ; Picture contains characters of the font which a matrix of letters texture-scale = 2 ; The power-of-two render scale factor width = 6 ; Horizontal count of cells in the matrix on texture height = 6 ; Vertical count of cells in the matrix on texture ; Map of font ; ; Entry format (monospace fonts): ; position y0 x1 = value X ; ; Example: ; 0-1 = "X" ; ; ; Entry format (with a width subtracting at left and right ): ; position y0 x1 = value X, padding-left 2, padding-right 3 ; ; Example: ; 0-1 = "X23" ; ; ; Entry format (map same coordinate to multiple places, for example, ; to share same cell for capitalized and smaller letter): ; position y0 x1 z1 = value X, padding-left 2, padding-right 3 ; ; Example: ; 0-1-0 = "X23" ; 0-1-1 = "x45" ; Note: z1 can have any number value, but required to have different for same X and Y pair. ; That need to make INI value names be different or all first values are will be overwritten by last ; [entries] 0-0 = "А" ; Regular map entry 1-0 = "Б22" ; Entry with subtracting of left and right sizes of letter widths ; ... ```