{"slug": "stonebrook-quill-full-featured-ai-authored-fantasy-font", "title": "Stonebrook Quill: full-featured AI-authored fantasy font", "summary": "A developer released Stonebrook Quill, a four-face fantasy font family whose letterforms were generated entirely by a pen-stroke engine rather than drawn as outlines. The exporter (crates/letter/examples/fontgen.rs) sweeps a nib along skeleton paths, unions the pieces with i_overlay, and fits cubic least-squares curves within about half a font unit before converting to TrueType quadratics via kurbo; spacing and kerning come from the engine's optical spacing split by median polish, and features are compiled from a generated Adobe feature file with fea-rs. The page reads the finished files back with ttf-parser and verifies each displayed form by shaping it with rustybuzz, the Rust port of the shaper used by Chrome and Firefox.", "body_md": "# Stonebrook Quill\n\nLoading the fonts…\n\n## About the family\n\n| The four faces in numbers, read from the font files | \n|---|\n\n## Try it\n\nAs CSS \n\nWith letter spacing other than zero, Chrome leaves out the joins whatever the toggles say. It also leaves out the contextual rotation unless font-feature-settings names calt, as this box does (it names every feature).\n\n## The features\n\nEvery feature the fonts carry, read from their GSUB and GPOS tables. Each example is live: the same text with the feature off, then on.\n\n## How it was made\n\n### Strokes to outlines\n\nNothing here was drawn as an outline. Every letter in the engine is a set of pen strokes: a skeleton path, the angle of the nib, how hard it presses. The exporter (`crates/letter/examples/fontgen.rs`) asks the engine for each form as the nib swept along its strokes, in one particular writing, with the hand's small differences of slant, proportion and placing. It takes the union of those pieces (`i_overlay`) and fits the outline with smooth curves: cubic least squares, kept to within about half a font unit of the ink and split at the true corners, then converted to the quadratic curves of TrueType (`kurbo`).\n\nWhere a letter has fewer than three shapes, the exporter writes its canonical form again with a different seed. These further writings (`a.w1`, `a.w2`) are the same letter with the hand's small irregularities, and they give the contextual rotation enough shapes to choose from.\n\n### Spacing and kerning\n\nSpacing comes from the engine's optical spacing: for every ordered pair of forms it reports how far apart it would set them. That is split into a right side for the first and a left side for the second (a median polish over the lower case; capitals are judged after capitals, figures after figures), which become the advance widths and side bearings. What is left over is the kerning, grouped into classes.\n\n### Tables and features\n\nThe features are generated as an Adobe feature file and compiled with `fea-rs`; the other tables are built with `write-fonts`. Everything is read from the engine, so new forms and joins appear in the fonts when they are regenerated, and the output is deterministic.\n\nThe marks are glyphs of their own, traced the same way, and their anchors are where the engine puts a mark over a letter. An accented character points at a composite glyph for programs that do not shape text; a shaper takes it apart into the letter and its mark, so the letter keeps all its forms.\n\nThis page reads the finished font files back (`crates/letter/examples/fontdata.rs`, with `ttf-parser`) and checks each form it shows by shaping it with `rustybuzz`, the Rust port of the shaper Chrome and Firefox use.\n\n### What the fonts cannot do that the live engine does\n\n## The files\n\nTo install on a Mac, double-click a `.ttf` and press Install in Font Book, or copy it into `~/Library/Fonts`.\n\n### On a web page", "url": "https://wpnews.pro/news/stonebrook-quill-full-featured-ai-authored-fantasy-font", "canonical_source": "https://swordcoastmap.com/font", "published_at": "2026-11-15 06:16:30+00:00", "updated_at": "2026-11-15 06:55:14.815153+00:00", "lang": "en", "topics": ["developer-tools"], "entities": ["Stonebrook Quill", "i_overlay", "kurbo", "fea-rs", "write-fonts", "ttf-parser", "rustybuzz", "Chrome"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/stonebrook-quill-full-featured-ai-authored-fantasy-font", "markdown": "https://wpnews.pro/news/stonebrook-quill-full-featured-ai-authored-fantasy-font.md", "text": "https://wpnews.pro/news/stonebrook-quill-full-featured-ai-authored-fantasy-font.txt", "jsonld": "https://wpnews.pro/news/stonebrook-quill-full-featured-ai-authored-fantasy-font.jsonld"}}