對於我使用 XeLaTeX 編寫的文檔,我必須使用 Times New Roman 作為主要字體。僅對於數學環境,我想使用 newtxmath 和 Libertine 字體。對於我的 TexShop 2016,我使用 texhash 和 updmap-sys 安裝了 Libertine(如指南中所述)。所以現在texfm-local有很多Libertine的*.tfm檔。我還將 *.otf Libertine 字體直接安裝到系統中。
對於這個簡單的例子
\documentclass[a4paper,14pt]{extreport}
\usepackage[no-math]{fontspec}
\usepackage[libertine]{newtxmath}
\setmainfont{Times New Roman}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\begin{document}
\((5!)^5\)
\end{document}
在 pdffonts 中我看到
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
HHHARJ+txsys Type 1C Builtin yes yes no 4 0
GMSUHV+LMRoman12-Regular Type 1C WinAnsi yes yes no 5 0
CZQOLM+LMRoman10-Regular Type 1C WinAnsi yes yes no 6 0
SRWENI+TimesNewRomanPSMT CID TrueType Identity-H yes yes yes 8 0
日誌中沒有任何警告。
您能否澄清以下問題
- 我是否正確地期望 pdffont 的輸出中僅包含 Libertine 字體?畢竟文檔中只有數學環境。
- 為什麼我在輸出中看到 LMRoman 和 Times?不應該有浪蕩子嗎?
- txsys是什麼?
我能做些什麼來解決這個問題?據我了解,透過正確的設置,我應該在 pdffont 的輸出中只看到 Libertine 字體...
任何幫助表示讚賞:)
答案1
注意: 在 TL 2017 發布之前,我建議不要使用 XeTeX 進行任何類型的數學排版。有幾個問題。
unicode-math
使用Libertine 的官方數學版本(稱為 Libertinus Math)要容易得多。
\documentclass[a4paper,14pt]{extreport}
\usepackage{unicode-math}
\setmainfont{Times New Roman}
\setmathfont{Libertinus Math}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\begin{document}
\((5!)^5\)
\end{document}
最好用完全免費的 Times 克隆版 TeX Gyre Termes 來替換所有內容。
\documentclass[a4paper,14pt]{extreport}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Termes}
\setmathfont{TeX Gyre Termes Math}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\begin{document}
\((5!)^5\)
\end{document}