首先,感谢您的大力帮助和支持 - 我几乎可以在这里找到所有关于乳胶问题的答案。然而,对于这个问题,我找不到解决方案。
我目前在使用 MinionPro 字体时遇到了数字垂直放置的问题。从下面的最小工作示例和附图可以看出,Latex 正确地将第一个数字与文本对齐。但是,一些后续数字设置得较低。
我觉得它影响了可读性,特别是在包含大量数字、目录和页眉的页面上。
我怎样才能强制乳胶以相同的方式垂直对齐所有数字?
提前谢谢您!
\documentclass[twoside,11pt,openright]{scrbook}
\usepackage{MinionPro}
\begin{document}
This tests vertical digit placement as regular text: 1.99 and in math context: $1.8$.
\end{document}
答案1
Minion Pro 提供 4 种数字,根据您选择的 Lining/Oldstyle 和 Tabular/Proportional 功能的组合。表格数字(或等宽)具有相同的字符宽度,这使得它们适合于类似数组的环境。下面是一个简单的演示:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Minion Pro}
\usepackage{array, makecell}
\newcommand*\nml{\addfontfeatures{Numbers={Monospaced,Lining}}}%
\newcommand*\nmo{\addfontfeatures{Numbers={Monospaced,OldStyle}}}%
\newcommand*\npl{\addfontfeatures{Numbers={Proportional,Lining}}}%
\newcommand*\npo{\addfontfeatures{Numbers={Proportional,OldStyle}}}%
\begin{document}
\begin{center}
\begin{tabular}{|>{\nml}c| >{\nmo}c|@{\quad}|>{\npl}c |>{\npo}c|}
\multicolumn{2}{c}{\bfseries Tabular\quad} & \multicolumn{2}{c}{\bfseries Proportional}\\
\hline
\thead{Lining} & \thead{OldStyle} & \thead{Lining} & \thead{OldStyle}\\
\hline
12345 & 12345 & 12345 & 12345 \\
67890& 67890 & 67890& 67890 \\
\hline
\end{tabular}
\end{center}
\end{document}
据我所知,大多数专业版Opentype字体有这4种图形。
为了充分利用 opentype 功能,您可以考虑使用 XeLaTeX 或 LuaLaTeX 进行编译,使用(如示例所示)fontspec
仅用于文本的包(nomath
选项)和MinionPro
用于数学的包(选项onlymath
)