Big-endian binary readers for TrueType font parsing. Fortran equivalents of stb_truetype.h macros: ttBYTE, ttUSHORT, ttSHORT, ttULONG. All offsets are 0-based to match the TTF specification directly.
Read one unsigned byte (0..255) at a 0-based offset.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int8), | intent(in) | :: | data(:) | |||
| integer, | intent(in) | :: | offset |
Read big-endian unsigned 16-bit integer (0..65535).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int8), | intent(in) | :: | data(:) | |||
| integer, | intent(in) | :: | offset |
Read big-endian signed 16-bit integer (-32768..32767).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int8), | intent(in) | :: | data(:) | |||
| integer, | intent(in) | :: | offset |
Read big-endian unsigned 32-bit integer via bit operations.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int8), | intent(in) | :: | data(:) | |||
| integer, | intent(in) | :: | offset |
Compare 4 bytes at offset to a character tag (e.g. "cmap", "head").
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int8), | intent(in) | :: | data(:) | |||
| integer, | intent(in) | :: | offset | |||
| character(len=4), | intent(in) | :: | tag |
Load entire file into a byte array via stream I/O.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | filename | |||
| integer(kind=int8), | intent(out), | allocatable | :: | data(:) | ||
| integer, | intent(out) | :: | file_size |