I'm working on manually parsing the glyphs from a TrueType (.ttf) font file. Depending on the size of the file, these can vary from hundreds to thousands of different glyphs. These glyphs can be segmented into discrete ranges, such as Latin, Greek, Cyrillic etc.
I'm just wondering, how do conventional text applications such as Microsoft Word handle such a large variety of glyphs? Is a certain range of characters loaded upon initialization, and special characters loaded when they're required? If so, would I be expected to keep the font data permanently in memory to parse font data from, or would it be better to periodically open, stream and close from the source file when required?