
我想組合 Helvetica 和 Symbol 字體,以便 Helvetica 處理拉丁字母,而 Symbol 處理希臘字母。 Mathspec 和 XeLaTeX 在這方面做得相當好,但我無法讓括號和百分比符號(以及可能的其他東西)看起來正確。例如下面的程式碼
\documentclass[10pt]{article}
\usepackage{mathspec}
\setmainfont{Helvetica}
\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\begin{document}
\Huge This looks right: $L_e$ (\%)
\Huge This looks wrong: $L_e\,(\%)$
\end{document}
產生以下文件:
(為了簡單起見,我省略了該\setmathsfont(Greek){Symbol}
命令,因為沒有它問題就會出現。)當我處於數學模式時,如何讓 XeLaTeX 使用 Helvetica 來表示括號和百分比符號?
答案1
無需數學載入fontspec
:
\documentclass[10pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{Helvetica}
\usepackage{mathastext}
%\setmathsfont(Digits,Latin,Greek)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\begin{document}
\Huge This looks right: $L_e$ (\%)
\Huge This looks wrong: $L_e\,(\%)$
\end{document}
答案2
在卡爾科勒和赫伯特的幫助下,我找到了以下解決方案,
\documentclass[10pt]{article}
\usepackage{mathspec}
\setmathsfont(Digits,Latin)[Uppercase=Italic,Lowercase=Italic]{Helvetica}
\setmathsfont(Greek)[Uppercase=Regular,Lowercase=Italic]{Symbol}
\setmainfont{Helvetica}
\usepackage[italic]{mathastext}
\begin{document}
\Huge This looks right: $\delta_e/L_e$ (\%)
\Huge This looks wrong: $\delta_e/L_e\,(\%)$
\end{document}
它產生,
我比較確定當 karlkoellermathastext
在 12 月 28 日提出建議時我嘗試過這個,但我遇到了一堆錯誤。在 12 月 28 日至 1 月 1 日之間,我從 TexLive 2012 更新到 TexLive 2013,現在它似乎可以工作了。該mathspec
軟體套件在 2012 年至 2013 年間沒有更新過,但mathastext
更新了大約 15 次。可能其中一項更新修復了我遇到的錯誤。
為了告知其他人,我想我也會分享一個我認為我更喜歡的替代方案。 XeLaTeX 套件很好,但是排版像上面這樣的短文件需要花費近 3 倍的時間。另外,我不確定 Symbol 和 Helvetica 字體在排版複雜的數學公式時是否能很好地工作。相反,我選擇了這個newtx
軟體包,它具有完整的數學支援和無襯線字體的 Helvetica 克隆。下面的程式碼
\documentclass[10pt]{article}
\usepackage{newtxtext}
\renewcommand*\familydefault{\sfdefault}
\usepackage[italic]{mathastext}
\usepackage{newtxmath}
\begin{document}
\Huge This looks right: $\delta_e/L_e$ (\%)
\Huge This looks wrong: $\delta_e/L_e\,(\%)$
\end{document}
產生,
中的字體\delta
有所不同newtx
,但整體風格相似,而且我並沒有與符號字體結婚。我只是不想要電腦現代(CM)字體。 (恕我直言,CM 字體線寬太輕。)不幸的是,仔細檢查發現newtx
括號在數學模式與文字模式下有點不同,但我可以處理。