# sansforgetica

LaTeX support for the Sans Forgetica typeface, with particular emphasis on
pdfLaTeX.

Version 0.1.0 (2026-09-20).

> [!IMPORTANT]
> The CTAN upload archive is intentionally font-free. It contains neither the
> Sans Forgetica OTF nor converted font files, metrics, or a font map. A user
> must obtain the font separately and prepare a local TeX font installation.

## CTAN archive contents

`sansforgetica-ctan.zip` has one top-level `sansforgetica/` directory:

```text
sansforgetica/
├── README.md
├── LICENSE
├── doc/
│   ├── sansforgetica.pdf
│   ├── sansforgetica.tex
│   ├── font-sample-sansforgetica.pdf
│   ├── font-sample-sansforgetica.tex
│   └── outline-font-sample-sansforgetica.sh
└── tex/
    ├── sansforgetica.sty
    └── t1sforgetica.fd
```

The manual contains the installation, interface, provenance, and licensing
details. Its LaTeX source is included beside the PDF. The uniquely named font
sample lists A--Z and a--z in every declared style, plus German and accented
Latin characters. In the distributed sample PDF, Inkscape has converted every
text object to a vector path; `pdffonts` therefore reports no fonts. Its LaTeX
source and the uniquely named outlining script are included beside it.

## Build the upload ZIP

The manual is deliberately typeset with Latin Modern. Building the vector
sample requires a locally obtained Sans Forgetica OTF, LCDF Typetools,
Inkscape, Ghostscript, Perl, Poppler tools, and a TeX distribution containing
`ec.enc`. Build the reproducible upload archive with:

```sh
make ctan
```

The result is `dist/sansforgetica-ctan.zip`.

## Local font build and tests

For development, place a legally obtained original font at
`vendor/SansForgetica-Regular.otf`. Install LCDF Typetools and a TeX
distribution containing `ec.enc`, then run:

```sh
make fonts
make test
make sample
```

The build verifies the OTF checksum before producing a local Type 1 font, T1
metrics, and map below `build/`. The first sample PDF is a private working
file. Inkscape then converts every page to vector paths. Ghostscript and the
outlining script normalize the PDF timestamp and document identifier so repeat
builds are byte-for-byte identical. Finally, the build verifies that the
distributable sample PDF contains no fonts. The OTF, generated font assets, and
private working PDF are excluded from the CTAN ZIP.

The package interface is:

```latex
\usepackage{sansforgetica}

{\sansforgetica Text set in Sans Forgetica.}
```

Use `\usepackage[default]{sansforgetica}` to request Sans Forgetica as the
document's default family. The historical release contains Regular only; all
other declared styles substitute Regular.

## Licensing and provenance

The independently written package support, documentation, sample source,
editorial layout, tests, and build scripts are licensed under LPPL 1.3c or
later. See [LICENSE](LICENSE).

Sans Forgetica is a separate work. No original or converted font program is
included in the CTAN ZIP. The sample PDF contains vector representations of
glyph forms; outlining removes the embedded font program but does not change
the font licence. A published Figure 1 caption identifies Sans Forgetica as CC
BY-NC 3.0 and gives that licence's URI, with an access date of 15 November
2018. The caption and its associated full-text study are available on
[ResearchGate](https://www.researchgate.net/figure/Sample-of-Sans-Forgetica-SF-typeface-SF-is-licensed-under-the-Creative-Commons_fig1_362913887):
Lucy Cui and Jereth Liu, “Recognition of Studied Words in Perceptual Disfluent
Sans Forgetica Font,” *Vision* 6(3), 2022, article 52,
[DOI 10.3390/vision6030052](https://doi.org/10.3390/vision6030052).

Further evidence and the distinction between the article licence and font
licence are recorded in the included PDF manual.

## Contact

Maintainer and technical contact: <erik@ctan.org>.

The initial implementation was developed with assistance from OpenAI ChatGPT;
the maintainer remains responsible for review, licensing, releases, and
maintenance.
