Der Code
\documentclass{article}
\usepackage{fontspec}
\usepackage{wasysym}
\begin{document}
\textrecipe
\end{document}
funktioniert richtig und generiert Unicode-Zeichen. (U+211E)
Aber wenn ich \setmainfont{Sanskrit 2003} hinzufüge, das von hier heruntergeladen wurdeSanskrit 2003.zip, das Unicode-Zeichen kann nicht generiert werden. Dies kann mit der Verfügbarkeit des Symbols in der Schriftart oder einem anderen Grund zusammenhängen, aber ich muss sowohl das Symbol als auch die Schriftart im Dokument beibehalten. Bitte helfen Sie.
\documentclass{article}
\usepackage{fontspec}
\usepackage{wasysym}
\setmainfont{Sanskrit 2003}
\begin{document}
\textrecipe
\end{document}
Antwort1
Das Paket wasysym
hat nichts mit zu tun \textrecipe
. Der Befehl wird in Standard-LaTeX durch das textcomp
Paket definiert, das nicht mit XeLaTeX und geladen werden darf fontspec
.
Das Problem besteht darin, dass die Schriftart Sanskrit 3000 keine Glyphe für ℞
(U+211E PRESCRIPTION TAKE) hat und daher \textrecipe
nichts erzeugt (mit XeLaTeX wird ein kleines Quadrat gezeichnet).
Sie können das fehlende Zeichen durch ein Zeichen aus einer Schriftart ersetzen, die dieses Zeichen enthält, zum Beispiel Asana Math:
\documentclass{article}
\usepackage{fontspec}
\usepackage{newunicodechar}
\setmainfont{Sanskrit2003.ttf}
\newfontfamily{\presc}{Asana Math}[Scale=MatchUppercase]
\newunicodechar{℞}{{\presc ℞}}
\AtBeginDocument{\renewcommand{\textrecipe}{℞}}
\begin{document}
R℞R
R\textrecipe R
\end{document}
Beachten Sie, dass die lateinischen Glyphen in Sanskrit 3000 Palatino sehr ähnlich zu sein scheinen.
Antwort2
Ich vermute, dass Ihre Schriftart dieses Symbol nicht bereitstellt (Hierist eine Sammlung von Schriftarten, die dies tun). Daher müssen Sie diesen Befehl neu definieren, um für genau dieses Symbol eine andere Schriftart zu verwenden:
% arara: xelatex
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Sanskrit2003.ttf}
\renewcommand{\textrecipe}{{\fontspec{quivira.otf}\symbol{"211E}}}
\begin{document}
Choose some font you like:
{\fontspec{code2000.ttf}\symbol{"211E}}{\fontspec{freeserif.otf}\symbol{"211E}}{\fontspec{quivira.otf}\symbol{"211E}}{\fontspec{symbola.ttf}\symbol{"211E}}
Redefine the old \verb|\textrecipe|.
Use it in text as \textrecipe{} before.
\end{document}