Documents, typesetting & fonts
Documents, typesetting & fonts
Documents, typesetting & fonts
Turning a document into pages: fonts, breaking, shaping, TeX, PDF, and one rich-document model.
| Organisation | Repos | Site | Docs | What it holds |
|---|---|---|---|---|
go-tex | 5 | site | docs | A TeX engine — mouth and gullet, math mode to SVG, a PDF-figure rasteriser, and a fetcher that gets a document the class files it asks for without redistributing any. |
go-typeset | 3 | site | docs | The typesetting algorithms on their own, with no TeX vocabulary in the API: Knuth-Plass line breaking, Liang hyphenation, the Unicode bidirectional algorithm. |
go-opentype | 3 | site | docs | The font format: TrueType/OpenType parsing and anti-aliased rasterisation, a HarfBuzz-lite complex-text shaper, and legible fonts ready to import. |
go-synctex | 1 | site | docs | TeX’s SyncTeX — the source-to-PDF correspondence, both ways. |
go-pdfkit | 15 | site | docs | The PDF stack, both directions: a 1.7 writer with TrueType and CFF subsetting, a reader and renderer, AcroForm and XFA form fields, text and structure extraction, a conformance suite judged against poppler, and a co-editable reader application built on all of it. |
go-docutils | 2 | site | docs | reStructuredText both ways: docutils’ core in pure Go — the parser and the doctree the LaTeX and PDF path is built on — and an extractor that renders a Go package’s own API documentation as reST to feed it. |
go-richdoc | 10 | site | docs | One rich-document model, and everything that reads or writes it. Both directions for the markup people edit — Markdown, LaTeX, reStructuredText — and one direction for the formats people are handed: HTML and XHTML, EPUB 2 and 3, Kindle MOBI, FictionBook 2, RFC 5322 mail with its MIME parts, and CSV, JSON, XML or plain text. A format is added by writing one reader against that model, not by writing a converter to each of the others. |
go-odf | 1 | site | docs | OpenDocument Text, in and out of the richdoc model. |
go-rtf | 1 | site | docs | RTF, in and out of the richdoc model. |
go-ooxml | 2 | site | — | Word, Excel and PowerPoint into the richdoc model: one container — the Open Packaging Conventions, kept separate because docx, xlsx and pptx all sit on it — and three vocabularies above it. |
go-slides | 2 | site | docs | Marp-compatible slide decks, with Go template interpolation and slide kinds, and the VS Code extension that previews and exports them. |
Counts are public repositories that hold code; brand, docs and landing repositories are excluded.