Copyright ©, eingetragene Marke ®, Absatzzeichen ¶, Paragrafzeichen §, Promille ‰, Grad Celsius ℃ – die überlieferte Weisheit lautet, dass man für diese Textsymbole in LaTeX \usepackage{textcomp} braucht. Das gilt seit der Kernel-Ausgabe vom 2. Februar 2020 nicht mehr. Das gesamte Repertoire der Kodierung TS1 (Text Companion) wurde in LaTeX selbst aufgenommen; auf TeX Live 2024 setzen \textcopyright, \texttrademark und \textcelsius ohne eine einzige Paketzeile in der Präambel. textcomp.sty ist inzwischen sogar ein Paket, das gar kein Symbol mehr definiert – nur noch Optionen. Diese Seite prüft durch Kompilieren, was heute Standard ist und wofür weiterhin ein Paket nötig bleibt, und fasst den Rest in Nachschlagetabellen: die Gruppe um \S und \P, die Kartenfarben ♠ ♥ ♦ ♣, eine gemessene \ding-Nummerntabelle für pifont, die Icons von fontawesome5 sowie japanische Kreisnummern und Varianten-Glyphen.
\usepackage{textcomp} ist überflüssig – TS1 kam 2020 in den Kernel
Setzt man auf TeX Live 2024 © ® ™ ℠ € ¢ ¥ £ ‰ ° ℃ • ¶ § ¦ ♪ ℮ ¤ № ※ ‽ Ω µ ₩ ₤ ƒ ₦ ganz ohne geladenes Paket, erscheint keine einzige Warnung oder Fehlermeldung. Ein Blick in textcomp.sty erklärt es. Die Datei beginnt mit \ProvidesPackage{textcomp}[2020/02/02 v2.0n], und ihr Rumpf besteht allein aus Optionsdeklarationen: full, almostfull, euro, safe, error, warn, info, quiet, force. Keine einzige Symboldefinition ist geblieben; sie alle sind nach latex.ltx gewandert.
Der Umzug war kein bloßes Aufräumen; er hat die Ausgabe repariert. Vor 2020 lauteten die Voreinstellungen von \textbullet, \textdagger, \textsection, \textparagraph, \textperiodcentered und Verwandten nicht TS1, sondern OMS – die mathematische Symbolschrift. Ein § im Fließtext war also heimlich aus der Mathematik entliehen. Der Unterschied ist messbar: In einem Dokument in Helvetica ist \textsection 5,55994 pt breit (das eigene § von Helvetica), während \textlegacysection, das dem alten Verhalten entspricht, 4,44447 pt misst (das mathematische § von Computer Modern). Bei \textbullet klafft die Lücke noch weiter: 3,5 pt gegen 5,00002 pt. Rückwege bleiben erhalten: \UseLegacyTextSymbols stellt das alte Verhalten pauschal wieder her, und es gibt symbolweise Befehle wie \textlegacybullet.
\documentclass{article}
% no \usepackage{textcomp} needed since the 2020-02-02 kernel
\begin{document}
Foo\textregistered{} is a trademark of Bar Inc.\texttrademark
\textcopyright\ 2026 \quad 40\textperthousand \quad 25\textcelsius \quad 90\textdegree
\end{document}©, ® und ™ setzen: \copyright gegenüber \textcopyright
Im Fließtext setzen beide dasselbe ©. Der Unterschied liegt im Verhalten im Mathematikmodus. Die Definition in latex.ltx lautet \DeclareRobustCommand{\copyright}{\ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi} – \copyright prüft also den Modus und schaltet selbst um, während \textcopyright nur im Text gilt. \pounds (£) ist genauso gebaut und wird in einer Formel zu \mathsterling. In der Praxis: Im Fließtext ist beides recht; an einer Stelle ohne erkennbaren Kontext, etwa in einem Makro, ist \copyright die sicherere Wahl.
Ein Blick auf die Standardimplementierung von \texttrademark lohnt ebenfalls. In latex.ltx steht weiterhin \DeclareTextCommandDefault{\texttrademark}{\textsuperscript{TM}}, und \textregistered ist über \textcircled{...} definiert. In einer Schriftumgebung ohne Zugriff auf TS1 ist ™ also keine echte Glyphe, sondern eine Fälschung aus hochgestelltem T und M, und ® eine Zusammensetzung aus Kreis und Buchstabe. Seit 2020 ist die Voreinstellung TS1, man bekommt das also selten zu sehen – doch mit einer Schrift ohne TS1-Glyphen taucht die alte Umsetzung wieder auf. Zu beachten ist außerdem, dass ein Steuerwort das folgende Leerzeichen verschluckt: innerhalb eines Wortes daher \textregistered{} mit leeren Klammern schreiben oder ein \ ergänzen.
| Befehl | Symbol | Bedeutung | Hinweise |
|---|---|---|---|
\textcopyright | © | Copyright | \copyright funktioniert auch im Mathematikmodus |
\textregistered | ® | eingetragene Marke | ohne TS1 als \textcircled-Komposition |
\texttrademark | ™ | Marke | der Ersatz ist eine Fälschung: \textsuperscript{TM} |
\textservicemark | ℠ | Dienstleistungsmarke | für Dienstleistungen statt Waren, vor allem in den USA |
\texteuro | € | Euro | für eine einheitliche Form siehe \euro aus eurosym unten |
\textcent | ¢ | Cent | \textsterling ergibt £, \textyen ergibt ¥ |
\textperthousand | ‰ | Promille | Zehntelpromille ‱ heißt \textpertenthousand |
\textdegree | ° | Grad | an eine Zahl gehängt sind \ang / \qty aus siunitx sicherer |
\textcelsius | ℃ | Grad Celsius | die ℃-Ligatur; Computer Modern enthält sie |
\textnumero | № | Numero-Zeichen | das „Nr.“ des russischen und französischen Gebrauchs |
\textmusicalnote | ♪ | Achtelnote | für den Fließtext; echter Notensatz ist etwas anderes |
\textbrokenbar | ¦ | unterbrochener Strich | \textbardbl ergibt den Doppelstrich ‖; keiner ist der mathematische |
\textestimated | ℮ | Estimated-Zeichen | das „e“-Zeichen auf EU-Verpackungen |
\textinterrobang | ‽ | Interrobang | die ?!-Ligatur; in cmr vorhanden, in vielen Textschriften nicht |
\textcircled{a} | ⓐ | eingekreistes Zeichen | eine Komposition; Computer Modern legt einen Kreis darüber |
§, ¶ und †: \S, \P und \dag funktionieren auch im Mathematikmodus
Diese vier sind unter den Symbolen ungewöhnlich, weil sie den Modus selbst prüfen. Die Definitionen in latex.ltx lassen sich direkt lesen: \DeclareRobustCommand{\S}{\ifmmode\mathsection\else\textsection\fi} und \DeclareRobustCommand{\P}{\ifmmode\mathparagraph\else\textparagraph\fi}. Deshalb funktionieren sowohl ein Paragrafverweis \S 3 im Fließtext als auch ein Fußnotenzeichen x^\dag in einer Formel. \dag (†) und \ddag (‡) sind genauso gebaut und werden in der Mathematik zu \dagger und \ddagger. Zu beachten: \S ist das Paragrafzeichen, nicht ein Kapitel – in juristischen Zitaten und Normtexten das übliche Zeichen für einen nummerierten Paragrafen, und die Verdopplung \S\S steht üblicherweise für mehrere davon.
| Befehl | Symbol | Text / Mathematik | Hinweise |
|---|---|---|---|
\S | § | beides | Paragrafzeichen; \textsection ist das reine Textsynonym |
\P | ¶ | beides | Absatzzeichen; \textparagraph liefert dasselbe |
\dag | † | beides | Kreuz; wird in der Mathematik zu \dagger |
\ddag | ‡ | beides | Doppelkreuz; in der Mathematik \ddagger |
\copyright | © | beides | in der Mathematik über \nfss@text zurück in den Text |
\pounds | £ | beides | in der Mathematik \mathsterling, das kursive £ |
Symbol \textohm not provided by font family cmr in TS1 encoding. richtig lesen
Die Warnung meldet, dass das Zeichen in der Textschrift fehlt und LaTeX es aus einer anderen entliehen hat. TS1 umfasst etwa 128 Plätze, und nur eine Minderheit der Textschriften füllt sie alle. Deshalb verfolgt LaTeX mit \DeclareEncodingSubset, wie viel von TS1 jede Familie umsetzt. In latex.ltx stehen die tatsächlichen Werte: Computer Modern (cmr) ist Untermenge 0, also vollständig, Latin Modern (lmr) ist 1, Helvetica (phv) und Courier (pcr) sind 5 – mit dem Kommentar, dass dort blank, Interrobang und Ohm Tofu sind – und eine unbekannte Familie ist 9, das absolute Minimum. Liegt das verlangte Zeichen außerhalb der Untermenge, wechselt LaTeX zu einer Ersatzfamilie, setzt es dort und gibt diese Warnung aus.
Und hier verdient textcomp endlich seinen Platz. Standardmäßig ist diese Meldung nicht einmal eine Warnung, sondern ein \@latex@info, das nur ins Log gelangt. Mit \usepackage[warn]{textcomp} wird daraus eine echte Warnung; [error] macht einen Fehler daraus, [quiet] schweigt vollständig. Beim Korrekturlesen eines Dokuments mit gewechselter Schrift zeigt ein Durchlauf mit [warn] auf einen Blick, welche Zeichen aus einer geliehenen Schrift stammen. Nebenbei: \textbackslash und \textbar gehören gar nicht zu TS1 – ihre Voreinstellung ist OMS, die mathematische Symbolschrift, und erst mit geladenem T1 erhält man das Zeichen der Textschrift. \textasciitilde treibt es noch weiter: Seine Standardimplementierung ist eine Komposition, die eine Tilde über ein leeres Zeichen setzt.
% textcomp defines no symbols any more — it only sets the reporting policy
\usepackage[warn]{textcomp}
% options: full / almostfull / euro / safe / error / warn / info / quiet / force
%
% Package textcomp Warning: Symbol \textohm not provided by
% (textcomp) font family cmr in TS1 encoding.
% (textcomp) Default family used instead on input line 5.Allein beim Euro-Zeichen ist ein eigenes Paket weiterhin im Dienst. \usepackage{eurosym} stellt \euro bereit, und Optionen wie official und gen wählen eine Form nahe am offiziellen Entwurf der Europäischen Kommission. Extrahiert man jedoch Text aus einem TeX-Live-2024-PDF mit dem \euro von eurosym, kommt ein einzelnes e heraus (bei \texteuro dagegen ein echtes €). Auf dem Papier mag es schöner sein; für ein Dokument, das Kopieren und Suchen überstehen soll, ist \texteuro die praktische Wahl.
Die Kartenfarben ♠ ♥ ♦ ♣ und die Formen △ □ ◇ setzen
Die Kartenfarben sind Standard-Mathematiksymbole von LaTeX und brauchen kein Paket: In fontmath.ltx stehen vier aufeinanderfolgende Zeilen von \DeclareMathSymbol{\clubsuit}{\mathord}{symbols}{"7C} bis \spadesuit; $\clubsuit$, $\diamondsuit$, $\heartsuit$ und $\spadesuit$ im Mathematikmodus genügen also. \triangle (△) wohnt an derselben Adresse. Allerdings sind die Farben in Computer Modern asymmetrisch: Kreuz und Pik sind ausgefüllt, Herz und Karo hohl (♣ ♢ ♡ ♠); ein gefülltes Herz oder Karo gibt es im Standardsatz schlicht nicht. Wer im Textmodus vier einheitliche Farben will, findet die Antwort in \ding{168} bis \ding{171} aus pifont im nächsten Abschnitt.
Bei Quadraten und Rauten wird das Paket am häufigsten verwechselt. Die Quellen von TeX Live 2024 klären es. \Box (□) und \Diamond (◇) stammen aus latexsym und dessen Schrift lasy – in latexsym.sty steht \DeclareMathSymbol\Box{\mathord}{lasy}{"32} – und sind nicht in amssymb. amssymb liefert \square und \lozenge samt den gefüllten \blacksquare und \blacklozenge aus der Schrift AMSa. Kurz: \Box gehört zu latexsym, \square zu amssymb. Das Häkchen \checkmark und das Malteserkreuz \maltese sind in amsfonts definiert, das amssymb mitlädt.
| Befehl | Symbol | Paket | Hinweise |
|---|---|---|---|
\clubsuit \spadesuit | ♣ ♠ | keines nötig | ausgefüllt; im Mathematikmodus verwenden |
\heartsuit \diamondsuit | ♡ ♢ | keines nötig | hohl; im Standardsatz gibt es keine gefüllte Fassung |
\triangle | △ | keines nötig | nicht zu verwechseln mit \triangleq (≜) |
\Box \Diamond | □ ◇ | latexsym | Notwendigkeit und Möglichkeit in der Modallogik; nicht amssymb |
\square \lozenge | □ ◊ | amssymb | gefüllt: \blacksquare und \blacklozenge |
\checkmark \maltese | ✓ ✠ | amssymb | tatsächlich in amsfonts definiert; im Mathematikmodus |
Auch hier lohnt der Blick darauf, was im PDF ankommt. Die hinter latexsym stehende Schrift lasy bringt keine Unicode-Zuordnung mit; extrahiert man Text aus einem TeX-Live-2024-PDF mit $\Box \Diamond \mho \Join$, erhält man die Ziffernfolge 2 3 0 1. Wenn Lesende den Text kopieren und durchsuchen könnten, sind \square und \lozenge aus amssymb die sicherere Wahl, sofern die Bedeutung es zulässt. Nützlich zu wissen ist außerdem, dass latexsym sofort mit \endinput aussteigt und gar nichts tut, wenn die AMS-Schriften bereits eingerichtet sind – das erspart viel Grübeln über die Reihenfolge der Pakete.
\usepackage{amssymb} % \square \lozenge \blacksquare \checkmark
\usepackage{latexsym} % \Box \Diamond \mho \Join
\usepackage{pifont} % \ding{168}--\ding{171}: solid suits in TEXT mode
% ...
Math: $\clubsuit\, \diamondsuit\, \heartsuit\, \spadesuit\, \triangle$
Text: \ding{168}\ding{169}\ding{170}\ding{171}\ding{N} aus pifont: eine durch Kompilieren geprüfte Nummerntabelle
Bildzeichen – Häkchen, Scheren, Sterne, zeigende Hände – sind in der Schrift Zapf Dingbats gesammelt; mit \usepackage{pifont} und dann \ding{NN} wählt man eine Glyphe über ihre Nummer. Diese Nummern schlägt man nach, statt sie zu lernen, und da die im Netz kursierenden Tabellen einander widersprechen, entstand diese hier, indem 32–126 und 161–254 auf TeX Live 2024 gesetzt und mit pdftotext zurückgelesen wurden. Die gebräuchlichsten: \ding{51} ist ✓ (ein leichtes Häkchen), \ding{52} ist ✔ (ein fettes), \ding{53} ist ✕, \ding{55} ist ✗ (das Wahlkreuz) und \ding{56} ist ✘ (das fette Wahlkreuz). Der Stern ★ ist \ding{72}, \ding{43} ist ☞, eine nach rechts zeigende Hand, und \ding{164} ist ❤, ein ausgefülltes Herz.
| Form | Ergebnis | Bereich | Hinweise |
|---|---|---|---|
\ding{51} \ding{52} | ✓ ✔ | 51–56 | leichtes und fettes Häkchen; 53–56 sind ✕ ✖ ✗ ✘ |
\ding{43} | ☞ | 42–43 | 42 ist die nach links zeigende ☛ |
\ding{72} | ★ | 65–107 | das große Feld aus Sternen und Blüten; ★ ist 72 |
\ding{168} | ♣ | 168–171 | in der Folge ♣ ♦ ♥ ♠ – gefüllte Farben im Textmodus |
\ding{164} | ❤ | 161–167 | ein ausgefülltes Herz; 165–167 sind ❥ ❦ ❧ |
\ding{172} | ① | 172–211 | 172–181 ergeben ①–⑩, 182–191 ergeben ❶–❿ |
\ding{213} | → | 212–254 | das Pfeilfeld; 214 ist ↔, 215 ist ↕ |
\dingline{56} | eine Schmucklinie aus diesem Symbol | — | \dingfill{NN} ist ein zeichengefülltes \hfill |
dinglist | Liste mit einem Dingbat als Marker | — | dingautolist erhöht die Nummer je Eintrag um eins |
\Pisymbol{psy}{NN} | eine Glyphe aus der Symbol-Schrift | — | der allgemeine Aufruf für andere Pi-Schriften |
\usepackage{pifont}
% ...
\ding{51}\ pass \qquad \ding{55}\ fail \qquad \ding{72}\ starred
\dingline{56} % a rule made of that symbol
\begin{dingautolist}{172} % numbers step: (1) (2) (3) ...
\item first step
\item second step
\end{dingautolist}Icons aus fontawesome5: \faGithub und \faIcon{github}
Für Markenlogos und Oberflächen-Icons – Zahnrad, Umschlag, Telefon – lädt man \usepackage{fontawesome5}. Es gibt zwei Aufrufweisen: einen eigenen Befehl, der den Icon-Namen in CamelCase setzt und fa voranstellt (\faGithub, \faEnvelope, \faAddressBook), oder das generische \faIcon{github}, das den offiziellen Namen in geschweiften Klammern nimmt. Drei Stile stehen bereit – solid (die gefüllte Voreinstellung), regular (Umriss) und brands (Logos) –, gewählt über ein optionales Argument wie in \faIcon[regular]{heart}; Markenlogos gelten automatisch als brands. Eine Engine-Abhängigkeit bleibt: pdfLaTeX bietet den freien Satz (Font Awesome 5 Free), doch der vollständige Satz mit allen Stilen und der kostenpflichtige Pro-Satz verlangen XeLaTeX oder LuaLaTeX.
\usepackage{fontawesome5}
% ...
Source: \faGithub\ github.com/example \quad \faEnvelope\ mail@example
\faIcon{rocket} \quad \faIcon[regular]{heart} % outlined style
\faCog \quad \faCheck \quad \faPythonJapanische Kreisnummern und Varianten-Kanji: \ajMaru und \UTF aus otf
Im japanischen Satz braucht man Kreisnummern ①②③, eingerahmte Ziffern, römische Zahlen Ⅰ Ⅱ Ⅲ und die Varianten-Kanji, die in Personennamen auftauchen (﨑, 髙, 𠮷). Dafür ist das Paket otf (japanese-otf) zuständig: \usepackage{otf} liefert eine Befehlsfamilie, die Adobe-Japan1-Glyphen anspricht. Kreis- und Kastenzahlen nehmen einfach die Zahl als Argument – \ajMaru{3} ist ③, \ajKaku{3} eingerahmt, \ajKuroMaru{3} weiß auf schwarz, \ajRoman{3} ist Ⅲ, \ajroman{3} ist ⅲ und \ajKakko{3} ist (3). Glyphen ohne eigenen Befehl erreicht man über den Codepoint mit \UTF{XXXX} (vier- bis fünfstellig hexadezimal) oder über die Adobe-Japan1-CID mit \CID{Nummer}.
Die Engine ist entscheidend. otf ist nur für pLaTeX / upLaTeX gedacht und setzt den Weg über DVI und dvipdfmx zum PDF voraus; unter pdfLaTeX läuft es nicht. Unter LuaLaTeX nimmt man luatexja-otf, unter XeLaTeX zxotf. Das Paket selbst kennt Optionen wie deluxe (mehrere Schriftstärken), expert (Formen, die zwischen vertikalem und horizontalem Satz wechseln) und jis2004 (JIS-2004-Glyphenformen). Und: Für bloße Kreisnummern gibt es im vorigen Abschnitt eine engine-unabhängige Alternative – \ding{172} bis \ding{181} aus pifont liefern ①–⑩ und funktionieren auch in einem pdfLaTeX-Dokument.
% pLaTeX / upLaTeX only; produce the PDF with dvipdfmx
\documentclass{ujarticle}
\usepackage[deluxe]{otf}
\begin{document}
\ajMaru{1}\ajMaru{2}\ajMaru{3} \quad \ajKakko{1} \quad \ajRoman{3}
\UTF{FA11} % a variant kanji, called by code point
\CID{13706} % or by Adobe-Japan1 CID
\end{document}Zusammengefasst die Arbeitsteilung: Westliche Symbole (© ® ™ € § ¶ ‰ ° ℃) gehören zum Standard-LaTeX – seit 2020 braucht man textcomp nur noch, wenn man die Ersetzungsmeldungen sehen will. Auch Kartenfarben und △ sind Standard; □ und ◇ stammen aus latexsym, die \square-Familie aus amssymb. Bildzeichen liefert \ding aus pifont, per Nummer aufgerufen, Oberflächen- und Marken-Icons fontawesome5, japanische Kreisnummern und Varianten-Kanji \ajMaru und \UTF aus otf. Nur eines lässt sich leicht verwechseln, nämlich die Engine: textcomp (also der Kernel) und pifont laufen überall, fontawesome5 verlangt für alles eine Unicode-Engine, und otf bleibt auf pLaTeX / upLaTeX beschränkt.