I Created 175 Fonts Using Rust
Rust, Parallelism, and Performance
- Commenters highlight how easily the project leveraged multicore CPUs in Rust, e.g., by dropping in Rayon’s parallel iterators.
- Some argue this isn’t unique to Rust (Scala/Java offer similar abstractions), others say Rust’s ownership/lifetime model makes data races far less likely.
- It’s noted that for purely functional, primitive-data workloads, Rust’s safety model matters less, but becomes key once shared mutable state appears.
- There’s side discussion distinguishing async/await (concurrency, not necessarily multithreading) from actual parallel execution.
Effort and Craft of Typeface Design
- Several posts stress that high‑quality font families can take years or even a career, especially with multiple weights/styles and extensive kerning.
- Others push back, seeing this as potentially discouraging or “gatekeeping,” arguing basic usable fonts can be made much faster.
- Respondents counter that typography involves deep attention to legibility, spacing, and aesthetics beyond simply drawing glyphs.
Kerning, Automation, and Quality Control
- The semi‑automated kerning approach is praised; the visualization and testing tools are seen as especially neat.
- People note problematic pairs (e.g., involving “j” and certain capitals), illustrating limits of the current heuristics.
- Suggestions include measuring the “area” between glyphs or flagging unusually large gaps for manual review, possibly feeding those metrics back into the algorithm.
- Manual overrides are considered essential even with sophisticated automation.
Character Coverage and Diacritics
- Multiple commenters request better support for Māori macrons, Vietnamese diacritics, Scandinavian characters (including missing “ø”), and Hungarian double‑accent letters.
- The author acknowledges some omissions as oversights and is open to a future update adding characters for more languages.
- Links and resources on Vietnamese typography are shared for those wanting to learn more.
Use in Games and Retro Constraints
- Retro and tile‑based developers discuss needing glyphs with widths divisible by 8 pixels.
- The fonts have fixed pixel heights but variable widths; there are monospaced variants and tile‑sheet exports that could be post‑processed to fixed‑width grids.
Licensing and Open Source Integration
- The commercial license for the font pack is analyzed; several readers conclude it forbids distributing the TTFs themselves as open source or as reusable templates.
- Some nuance that one might still ship binaries of otherwise open‑source projects that bundle the fonts, provided the fonts aren’t in the source distribution.
- There’s side discussion on how different jurisdictions treat copyrightability of typefaces and bitmap fonts.
Closed-Source Tool and Motivation
- Some criticize that the custom Rust tool (PIFO) is not open source despite the detailed write‑up.
- The author responds that the goal is to share ideas, workflows, and inspiration around using code to accelerate creative work, even without releasing all the tooling.
- Many readers still find the article motivating and technically insightful, independent of code availability.
Broader Reflections and Related Resources
- Commenters share admiration for the mix of engineering and art, likening it to historical polymaths and classic typesetting systems.
- Others mention alternative pixel‑font collections and indie games that use strong pixel aesthetics, showing the broader ecosystem where such fonts are valuable.