TTF — Intentionally Corrupt: Wrong glyf Table-Directory Checksum
An intentionally corrupt font whose glyf table data is perfectly fine but whose recorded checksum in the table directory is wrong. The complement to the head fixture: this one catches tools that verify per-table checksums, and its glyphs still draw, so the damage is invisible without a real integrity check.
The quick brown fox jumps over the lazy dog
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
0123456789 & ! ? @ # % ( ) — “ ”
12pxThe quick brown fox jumps over the lazy dog
16pxThe quick brown fox jumps over the lazy dog
20pxThe quick brown fox jumps over the lazy dog
28pxThe quick brown fox jumps over the lazy dog
40pxThe quick brown fox jumps over the lazy dog
Specifications
- Family
- Novus Grotesk P7 Integrity
- Units Per Em
- 1000
- Cap Height
- 700
- X Height
- 500
- Wave
- p7
- Seed
- 20260807
- Built With
- fontTools 4.x
- Determinism
- head.created/head.modified pinned to 2026-01-01T00:00:00Z, recalcTimestamp off; outlines are parametric, colour material is seeded
- Usage Rights
- original artwork, free for any use
- Intentionally Corrupt
- true
- Damage
- the glyf table's checkSum field in the table directory overwritten with 0xDEADBEEF
- Table Affected
- glyf
- Table Offset
- 908
- Table Length
- 3972
- Bytes Changed
- 4
- Table Data Itself
- untouched and still valid
- Everything Else
- byte-identical to NovusIntegrityReference.ttf
Testing contract
Expected to fail- Scenario
- Verify each table's checksum against its recorded value, then render the font.
- Expected result
- The glyf entry at offset 908 fails verification while every other table passes; rendering is unaffected because the table bytes themselves were never modified.
What is a .ttf file?
TTF (TrueType Font) is a scalable outline font format developed by Apple and Microsoft that uses quadratic Bezier curves and includes hinting for sharp rendering at small sizes. It stores glyph outlines, metrics, and character mappings in a single file. It is one of the most widely supported desktop and web font formats.
How to use this file
Use an example TTF to test font parsers, glyph and metric extraction, text-rendering pipelines, and converters that produce web font formats like WOFF.
How to use this file for testing
“TTF — Intentionally Corrupt: Wrong glyf Table-Directory Checksum” is a deterministic Novus Examples fixture for Conversion testing, Error handling, Metadata testing. The same content exported across many formats and linked as a group, so you can convert one and diff against the expected twin.
Documented properties for this file: seed 20260807 · damage: the glyf table's checkSum field in the table directory overwritten with 0xDEADBEEF · intentionally corrupt. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Font fixtures carry a small documented glyph set across the common wrappers. Test font loaders, subsetting, and @font-face; the specimen preview renders the glyphs the face actually maps.
Code examples
@font-face {
font-family: "Sample";
src: url("NovusIntegrityBrokenTable.ttf");
}
body { font-family: "Sample", sans-serif; }Related files
- ttfTTF — Overlapping Contours with OVERLAP_SIMPLE and OVERLAP_COMPOUNDThis whole family is drawn as overlapping strokes rather than merged outlines, and this cut sets the two flags that tell a rasteriser so: OVERLAP_SIMPLE on simple glyphs and OVERLAP_COMPOUND on composites. For testing rasterisers that need the hint to avoid seams, and tools that must preserve the flags through a round trip. Original typeface, free to use.

- ttfTTF — unitsPerEm 128 (coarse em grid)The same design squeezed onto a 128-unit em, the coarse end of what the specification allows. Coordinates quantise hard, so this is the fixture for testing scaling maths, rounding, and any code that assumes a font has enough resolution to hint. Original typeface, free to use.

- ttfTTF — usWinAscent/Descent Smaller Than the Glyph Bounding BoxusWinAscent and usWinDescent are deliberately set below the real glyph bounding box, which is the classic cause of clipped accents and cut-off descenders on Windows. The head table still reports the true extents, so a validator can catch the contradiction and a renderer can be measured against it. Original typeface, free to use.

- ttfTTF — Variable Font Missing the STAT Table (intentionally incomplete)A variable font that is intentionally incomplete: the STAT table OpenType requires of every variable font has been removed, while fvar, gvar and the named instances remain. It still renders, which is exactly the problem — style linking, family grouping and instance naming quietly degrade instead of failing loudly.

- ttfTTF — Vertical Metrics: hhea, typo and win All DisagreeThe same outlines with all three vertical-metric families deliberately set to different sums — 1000, 1250 and 1400 units. The default line height a renderer produces tells you exactly which family it read, which is the fastest way to explain why one browser or one word processor lays your text out differently from the rest. Original typeface, free to use.

- tarTAR - FIFO and Device Node RecordsA FIFO, a character device and a block device, each a header with no data blocks and with the device numbers in the devmajor/devminor fields. Unprivileged extraction cannot create the two device nodes, so the correct behaviour is to skip them with a warning rather than to abort the whole archive or to create empty regular files in their place.

Generated by generation/fonts_p7.py. Free for any use, no attribution required — license.