Plain TeX, das von Donald Knuth entwickelte Basissystem für die Textsatzverarbeitung, bietet eine solide Grundlage, setzt jedoch vor allem auf Einfachheit und Funktionalität in Bezug auf Schriftarten. Im Gegensatz zu moderneren Systemen wie LaTeX oder ConTeXt stellt Plain TeX keine ausgefeilte Schriftverwaltung bereit, sondern belässt dem Benutzer die Aufgabe, Schriftarten eigenständig zu definieren und zu verwenden. Dies führt zu einer hohen Flexibilität, erfordert jedoch auch ein gewisses Maß an technischem Verständnis, gerade wenn es darum geht, nicht standardmäßige Schriftarten zu integrieren. Der Umgang mit nicht standardmäßigen Schriftarten in Plain TeX ist somit ein spannendes Thema, das sowohl grundsätzliche Kenntnisse als auch erweiterte Ansätze umfasst. Die Basis für die Wahl von Schriftarten in Plain TeX ist die Verwendung des primitives Befehls \font.
Mit ihm kann man eine beliebige Schrift auf Grundlage einer existierenden tfm-Datei laden und in der Folge für das Setzen von Text nutzen. Dabei ist der Dateiname, der als Argument übergeben wird, entscheidend. Der Name verweist auf die entsprechende Schriftmetrikdatei (tfm), die die wichtigsten Schriftinformationen enthält. Möchte man beispielsweise eine Schrift namens nonstdfont verwenden, so definiert man mit \font\foo=nonstdfont eine Schriftinstanz, die später mit dem Befehl \foo aktiviert wird. Daraufhin kann man Text mit dieser Schrift setzen und erhält somit alternative Schriftarten jenseits der Standard Computer Modern Familien.
Der Vorteil dieser Methode liegt in der Direktheit und einfachen Kontrolle. Allerdings muss der Benutzer selbst sicherstellen, dass die notwendige tfm-Datei vorhanden ist und der Schriftname korrekt angegeben wird. Darüber hinaus muss bei der Verwendung von Varianten, etwa kursiver Schrift, jede Version einzeln definiert werden. So muss beispielsweise eine kursive Variante mit einem eigenen \font-Befehl wie \font\fooi=nonstdfont-italic angelegt werden. Dies erlaubt zwar Flexibilität, ist aufwendig und birgt Gefahren von Inkonsistenzen, wenn der Anwender mehrere Varianten manuell verwaltet.
Einer der zentralen Punkte beim Einsatz von nicht standardmäßigen Schriftarten liegt in der Problematik der Schriftcodierungen. Plain TeX ist eng an die originale, von Knuth entworfene Schriftcodierung gebunden, die so genannte OT1-Codierung. Diese ist für viele moderne Schriften allerdings nicht mehr optimal, und es existieren zahlreiche alternative Codierungen wie die T1 oder die EC-Codierung. Da Plain TeX viele seiner Makros auf die OT1-Codierung ausrichtet, kann die Verwendung neuerer Schriftarten ohne Anpassungen zu unerwarteten Ergebnissen führen oder bestimmte Zeichen nicht korrekt darstellen. Um diese Schwierigkeiten zu überwinden, haben sich im Laufe der Zeit verschiedene Ansätze und Pakete entwickelt, die die Schriftverwaltung in Plain TeX erweitern beziehungsweise verbessern.
Besonders erwähnenswert ist das ec-plain Bundle, das eine Variante von Plain TeX bereitstellt, die EC-Schriften direkt unterstützt und somit eine modernere Codierung zulässt. Diese Anpassung ist besonders sinnvoll für Nutzer, die auf europäische Zeichensätze angewiesen sind und gleichzeitig die einfache Arbeitsweise von Plain TeX beibehalten wollen. Allerdings sollte man bei Verwendung von Type-1-Versionen der EC-Fonts vorsichtig sein, da ec-plain teilweise Erweiterungen enthält, die zu Konflikten führen können. Eine weitere Zwischenlösung bietet das font_selection Paket. Es erweitert Plain TeX nicht in vollem Umfang um ein komplettes Schriftsystem, ermöglicht jedoch die Auswahl von Schriftschnitten und -größen.
Die Schriftfamilie selbst bleibt hier auf die bekannten Computer Modern Fonts eingeschränkt. Dieses Paket ist besonders für Anwender geeignet, die eine einfache und leichtgewichtige Lösung suchen, um innerhalb von Plain TeX eine größere Vielfalt an Schriftschnitten zu nutzen, ohne gleich die volle Komplexität eines Schriftverwaltungssystems zu integrieren. Wer sich intensiver mit der systematischen Verwaltung verschiedener Schriftfamilien auseinandersetzen möchte, findet mit den Paketen plnfss, fontch und ofs Alternativen, die sich stärker an den Konzepten von LaTeX und ConTeXt orientieren. Diese Pakete ermöglichen neben der Auswahl von Größe und Schriftschnitt auch die bequeme Verwaltung verschiedener Schriftfamilien und sind kompatibel mit alternativen Codierungen, etwa T1 oder TS1. Insbesondere fontch legt besonderen Wert auf die Unterstützung der T1-Codierung und bietet entsprechende Anpassungen an, die über spezielle und teils erklärungsbedürftige Befehle aktiviert werden.
Ofs gilt unter den Alternativen als besonders ausgereift, da es nicht nur T1 und TS1, sondern auch die seltener verwendete IL2-Codierung unterstützt. IL2 ist vor allem im tschechischen und slowakischen Raum populär und deckt dort die notwendigen Sonderzeichen ab. Darüber hinaus bietet ofs umfangreiche Möglichkeiten, mathematische Schriften einzubinden, einschließlich beliebter Ergänzungen wie pxfonts oder txfonts, womit sich das Einsatzspektrum von Plain TeX deutlich erweitert. Ebenfalls erwähnenswert ist das pdcmac Paket, das ein vollständiges Dokumentvorbereitungssystem ähnlich Eplain darstellt. Ein Baustein darin ist pdcfsel, eine einfache, aber leistungsfähige Schriftselektionsbibliothek, die vom Benutzer verlangt, die benötigten Schriften explizit zu deklarieren.
pdcmac unterstützt unter anderem Standard-Adobe-Schriften, was besonders für Nutzer interessant ist, die auf PDF-Ausgabe und professionellen Satz Wert legen. Für Nutzer, die lediglich schnell die Schriftgröße verändern möchten, bietet die varisize Sammlung eine elegante Lösung. Hiermit lassen sich Schriftgrößen zwischen sieben und zwanzig Punkt nominal einstellen, ohne den Aufwand einer komplexen Schriftverwaltung. Die entsprechenden Befehle werden mit jedem der varisize-Paketdateien definiert, etwa in 11pt.tex mit dem Befehl \elevenpoint.
Ein weiteres Feature ist die einfache Rückkehr zur Standardgröße über definierte Befehle wie \tenpoint. In der Praxis stellt die Einbindung nicht standardmäßiger Schriftarten in Plain TeX meist einen Kompromiss zwischen Flexibilität und Aufwand dar. Grundsätzlich bleiben Anfänger bei der einfachen \font-Methode, mit der sie schnell und unkompliziert alternative Schriften nutzen können. Für Projekte mit höheren Ansprüchen an Schriftfamilien und Codierungen bieten sich dagegen die vorgestellten Pakete und Erweiterungen an. Dabei lohnt es sich, mögliche Einschränkungen, insbesondere bei der Kompatibilität mit PDF-Ausgaben und Type-1 Fonts, frühzeitig zu prüfen.