pub enum Shape {
Wordmark,
Text(&'static [&'static str]),
Disc,
Knockout {
lines: &'static [&'static str],
glyph: f32,
},
}Expand description
What shape the field pulls the lattice towards.
A size ladder rather than a set of alternatives: the wordmark is the
logo, the knockout is the icon, and the disc is what is left when a
tile is sixteen pixels across. Shape::Text sets the font for
whatever a knockout cuts.
Variants§
Wordmark
The “did.bot” wordmark, laid out the way the landing page lays it out — hung off its own “.” rather than centred — rather than as text this crate composed.
Text(&'static [&'static str])
Lines of the same six-glyph font, centred as a lockup. No mark
ships as one today; it is what Shape::Knockout cuts with, and
what a second line would be set in if the icons ever wanted one.
Disc
A filled disc. Letterforms do not survive this anneal below about three lattice sites to the glyph pixel — surface tension closes a two-site counter, and a “d” comes out a blob — so the smallest tile gets the one shape a lattice this coarse can still hold, and the one the dynamics actively help: a single ordered domain, which is also the “.” in did.bot.
Knockout
A disc with lines cut out of it: the letterform is the ground
showing through, not the ink.
This is what every icon above the dot is. A letter
set positively at 32 sites is a stroke of ink two or three sites
wide with noise on both flanks; cut out of a disc instead, both
its flanks are one large ordered domain, which is far more stable
— the shape is carried by an edge rather than by a thin ribbon.
The counter still has to be a hole several sites across, which is
why glyph is well under Mark::fill rather than filling it.