如何將系統字體與乳膠字體一起使用

如何將系統字體與乳膠字體一起使用

我正在嘗試使用特殊標題的顯示字體——它是 truetype 格式的 Anton,但繼續在文件的其餘部分使用普通的 Latex 字體。我認為這可以透過以下方式實現

\usepackage{droid}
\usepackage{ifxetex}
\ifxetex
  \usepackage{fontspec}
  \defaultfontfeatures{Ligatures=TeX} % To support LaTeX quoting style
  \newfontfamily\headerfont{Anton}
\else
  \usepackage[T1]{fontenc}
  \usepackage[utf8]{inputenc}
\fi

但如果這是由 xelatex 編譯的,則 droid 套件將被忽略,如果由 pdflatex 編譯,則 Anton 字體不可用。有辦法解決這個問題嗎?

答案1

\ifxetex檢測您是否使用 XeTeX 進行編譯。如果是,它就會執行該if位。如果不是,則執行該else位。此外,您不能inputenc與 XeTeX 一起使用(所以,實際上,該程式碼永遠不會被讀取,這很好)。

不過,您可以在文件的其餘部分使用「普通 LaTeX 字型」。只需使用三行程式碼\usepackage{fontspec}並在之後放置\usepackage{droid}配置,因為載入fontspec將預設係列設為拉丁現代。

\documentclass{article}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX} % To support LaTeX quoting style
\newfontfamily\headerfont{Quintessential}
\usepackage[T1]{fontenc}
\usepackage{droid}
\begin{document}
Some text.
\end{document}

但是,您可能更喜歡使用 opentype/truetype 格式的 Droid 字體,以充分利用 XeTeX。

\documentclass{article}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures=TeX} % To support LaTeX quoting style
\newfontfamily\headerfont{Quintessential}
\setmainfont{Droid Serif}
\setsansfont{Droid Sans}
\setmonofont{Droid Sans Mono}
\begin{document}
  Some text. Serif. \textsf{Sans}. \texttt{Mono}.
\end{document}

機器人真實類型

請注意,我更改了 的值\headerfont以防止 XeLaTeX 永遠掛起,因為我沒有您正在使用的字體。

相關內容