52 lines
1.2 KiB
Markdown
52 lines
1.2 KiB
Markdown
# TrueType font parser
|
|
|
|
Fountainhead is a TrueType and OpenType font parser. Its main
|
|
purpose is to extract information from the fonts to help to
|
|
embed these fonts into PDF documents. It also supports dumping
|
|
font information to the screen.
|
|
|
|
There is also an executable to dump fonts.
|
|
|
|
## Installation
|
|
|
|
Add the library as dependency to your project.
|
|
Alternatively build an executable with:
|
|
|
|
```sh
|
|
cabal build
|
|
```
|
|
|
|
The binary can be run with:
|
|
|
|
```sh
|
|
cabal run fountainhead -- myfont.ttf
|
|
```
|
|
|
|
or installed locally and executed just as:
|
|
|
|
```sh
|
|
fountainhead myfont.ttf
|
|
```
|
|
|
|
This command will output the contents of the font in a format similar to
|
|
ttfdump from TeXLive.
|
|
|
|
See
|
|
|
|
```sh
|
|
fountainhead --help
|
|
```
|
|
|
|
for help.
|
|
|
|
## Usage
|
|
|
|
TrueType and OpenType fonts consist of a sequence of tables and various
|
|
informations about the font are encoded in these tables. There are both
|
|
required and optional tables. The first table is a font directory and it
|
|
describes the overall structure of the font, what tables it contains and at what
|
|
offset other tables can be found.
|
|
|
|
This library doesn't parse the whole font at once. The font directory has to be
|
|
parsed first and can be used then to parse further tables as needed.
|