A page set in a font from 1990

A print shop that has been buying fonts for twenty years owns a collection in Adobe's first font format, bought and paid for, that almost nothing reads any more. Replacing it means buying the same fonts a second time and accepting that a reprint will not quite match the original run. This engine reads that collection, so it keeps working instead of becoming a reason to change nothing.

Everything the page says about that font — its name, how many shapes it carries, the rectangle they stand in, the thickness of a downstroke, where an underline belongs — was read out of the font itself as the page was being drawn, so the page cannot describe a font other than the one it is set in. It also says plainly what this old kind costs: it travels whole, where every other kind travels only the letters actually used.

What this example shows

  • A font from 1990, read and carried into the file whole.
  • Every width read from the letter's own glyph: no side file needed.
  • What the font says about itself, printed on the page it drew.

The source code, complete

Nothing is left out and nothing is simplified: this is the program exactly as it runs, for the developer who uses this library. The third is the description itself: a plain list of what the page has to say, which is what the service is sent.

Read the Rust source Read the Python source Read the JSON source

The document itself

Open the document in English Open the document in French

Examples near this one

A minimal PDF

Two identical pages carrying the bones of an invoice in plain shapes, and not a word of text: a file of a dozen kilobytes, with no font embedded.

Making the file smaller

The same document written twice, plainly and packed, with what each one weighs and what the packing saved.

Fonts embedded in the file

Text set in a font embedded in the file, cut down to the letters actually used, and still searchable, copyable and readable aloud.

Every example, by subject