Font rendering is an essential part of computer application programs; it helps users to interact with the system and understand information in a readable form. OpenGL ES does not provide a built-in support for font rendering; instead, the font engine needs to be programed by a developer. There are many font-rendering techniques; this chapter will cover the most popular technique for font rendering, which is rendered using the FreeType project in conjunction with the Harfbuzz library. The former is used to rasterize symbolic characters or glyphs using font files; this library supports different types of font file formats, such as TTF, BDF, OTF, Windows FNT, and so on. The latter library is used for multilingual support. Using this library, almost all world-famous language scripts can be rendered.
This chapter will provide you with a detailed description on how to build the font engine; we will implement simple text rendering with the help of FreeType. We will use the capabilities...