Ich muss ein Dokument mit einigen Schriftarten erstellen. Zwei oder drei werden metafont
für den Großteil des Dokuments in einer lateinbasierten Sprache verwendet, und dann muss ich noch eine Schriftart für eine südostasiatische Sprache verwenden (also wahrscheinlich eine TrueType-Schriftart oder ähnliches, da ich keine TeX-basierten Schriftarten finden kann, die mit südostasiatischen Sprachen funktionieren). So wie ich es verstehe, kann ich Schriftarten für lateinbasierte Sprachen ganz einfach kombinieren:
\documentclass{book}
\usepackage[T1]{fontenc}
\begin{document}
Regular {\fontfamily{pzc}\selectfont and special} fonts.
\end{document}
gibt mir den gewünschten Effekt:
aber sobald ich hinzufüge fontspec
, was von verlangt wird polyglossia
, funktioniert die Schriftart Zapf Chancery ( pzc
) nicht mehr:
\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage{polyglossia}
\newfontfamily\thaifont{Norasi}
\setdefaultlanguage{english}
\setotherlanguage{thai}
\begin{document}
English regular {\fontfamily{pzc}\selectfont and special} fonts.\\
\begin{thai}ตัวพิมพ์ภาษาไทย\end{thai}
\end{document}
erzeugt:
Gibt es eine Möglichkeit, dieses Problem zu vermeiden? Um es klarzustellen, ichdenkenIch muss polyglossia
südostasiatische Sprachen verwenden, und ichmussmetafont
Verwenden Sie auch mehrere Schriftarten.
Antwort
Wie betont vonUlrike Fischerund weiter erläutert durchegreg, \fontencoding
muss angegeben werden, wenn Metafont-Schriftarten unter verwendet werden, fontspec
da Letzteres erwartet, EU1
während Ersteres benötigt T1
(ich fasse zusammen, was ich zu verstehe fontencoding
, was nicht viel ist).
\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage{polyglossia}
\newfontfamily\thaifont{Norasi}
\setdefaultlanguage{english}
\setotherlanguage{thai}
\begin{document}
English regular {\fontencoding{T1}\fontfamily{pzc}\selectfont and special} fonts.\\
\begin{thai}ตัวพิมพ์ภาษาไทย\end{thai}
\end{document}
ergibt die richtige Ausgabe:
Antwort1
Sie können häufig OpenType/TrueType-Ersatz für die Schriftarten finden, die Sie benötigen. Dies ist auch bei Zapf Chancery der Fall: Ein Klon ist als TeX Gyre Chorus verfügbar. Aber auch native TeX/Metafont-Schriftarten können verwendet werden: Es folgt ein Beispiel mit der Dürer-Schriftart.
\documentclass{book}
\usepackage{fontspec}
\usepackage{polyglossia}
\newfontfamily\thaifont{Sathu} % I don't have Norasi
\newfontfamily\specialfont{TeX Gyre Chorus}
\setmainlanguage{english}
\setotherlanguage{thai}
\usepackage{duerer} % for a MF font
\begin{document}
English regular {\specialfont and special} fonts.\\
\begin{thai}ตัวพิมพ์ภาษาไทย\end{thai}
\textdurm{ABCDE} % duerer has only uppercase
\end{document}
Was \textdurm{ABCDE}
im Wesentlichen bedeutet,
{\fontencoding{OT1}\fontfamily{durm}\selectfont ABCDE}
und \fontencoding{OT1}
(oder \fontencoding{T1}
) ist das, was Sie vermisst haben, weil die Standardkodierung mit XeLaTeX und fontspec
ist EU1
.