The ttf2mesh crossplatform library allows to convert a glyphs of truetype font (ttf) to a mesh objects in 2d and 3d space. The library does not require any graphical context and does not use system dependent functions.
The library consists of two files written in the C language of the c99 standard: ttf2mesh.c and ttf2mesh.h. The ttf2mesh.c code implements a parsing of ttf-files and a tessellation algorithm that provides the formats conversion. The tessellation algorithm uses the Delaunay test to form an optimal set of triangles. Tessellation (triangulation) process is described in “this post” and is shown in the animation below.
The library has a simple doxygen-documented API for loading TTF files and converting glyphs into mesh objects. Examples of using the library are presented in examples/src directory. There are three main examples:
FILE | Description |
---|---|
examples/src/simple.c | The simplest code that shows how a user can load a font from the system directory and convert its glyph to a 2d mesh object. The converted glyph is rendering to an opengl window as a filled mesh, wireframe or the glyph contours. |
examples/src/glyph3d.c | Same as simple.c example, except that the font glyphs are converted to a 3D mesh object, which is displayed in the opengl window with animation. |
examples/src/ttf2obj.c | Console application for converting TTF font input file to a Wavefront object file (.obj). Each object in the output file includes the plane geometry of the corresponding glyph and its parameters: Unicode ID, advance and bearing. |
To compile examples on Linux system you can use the GNU make utility: make -C examples/build-linux-make all
. In the Windows operating system, you can use for compilation the Microsoft Visual Studio C++ project files that are located in the examples/build-win-msvc
directory. Additionally, the examples\build-any-qmake
directory contains pro files for building examples using the qtcreator IDE.
You can read information on how the library works at this link.
PayPal me or: MasterCard 5469 3800 5517 1176 wmz Z518568605100 wmr R885157851601
Описание
Тесселятор TrueType шрифтов. Позволяет загружать ttf-файлы и преобразовывать векторные символы в сеточные объекты, применимые для 2d и 3d вывода графики, а также, 3d-печати.