MinionPro、newtxmath 以及 oldstyle 和 lining 数字带来的更多不幸

MinionPro、newtxmath 以及 oldstyle 和 lining 数字带来的更多不幸

在继续我的旅程使用这个newtxmath包,这次我尝试了下一个代码:

\documentclass{memoir}

\usepackage{textcomp}
\usepackage[lf,onlytext]{MinionPro}% no osf, no math
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage[minion,vvarbb,cmbraces,cmintegrals]{newtxmath}
\renewcommand{\rmdefault}{pmnj} % use osf in text

\begin{document}
\noindent
Text figures: 0123456789
\par\noindent
Math figures: $0123456789$
\end{document}

这出现在 的文档中minion2newtx。我的问题是,当我将上面的代码 pdfLaTeX 化时,我得到的是文本模式的 Latin Modern 字体(或 Computer Modern),以及数学模式的 MinionPro。导致这种情况的原因是将罗马字体设置为 的那一行pmnj。如果我注释相应的行,我会得到所有 Minion,但文本图形是内衬的,而我想要的是数学模式的内衬图形和文本模式的 oldstyle。我相信我的系统(MikTeX 2.9 刚刚更新)具有正确的设置和所有必要的字体文件,但也许我漏掉了一些东西。

第二个问题是,如果我在数学模式下使用 MinionPro,在加载时不加载newtxmath和删除选项,我会得到至少一些运算符的错误字形。也许这与第一个问题有关,但我真的不知道。onlytextMinionPro

有人能提供一些提示来说明发生了什么吗?也许这只是我自己的 MikTeX 设置的问题,但到目前为止我还没有发现任何问题。

答案1

好吧,在看到我的问题没有得到太多关注之后,在深入研究了我的 MiKTeX 设置中的字体文件之后,在尝试使用\renewcommand{\rmdefault}{MinionPro}其中的文件夹和文件内容失败之后updmap.cfg,我查看了样式文件MinionPro.sty本身。我在那里找到的内容被证明是有用的,结果与我在此 OP 上设置的链接中为我的探索提供的答案的方向相同。以下方法有效(我删除了序言中除了必要的几行之外的所有内容):

\documentclass{memoir}

\usepackage[lf,onlytext]{MinionPro}% no osf, no math
\usepackage[minion]{newtxmath}

\makeatletter
\renewcommand*{\Mn@Text@Fig}{OsF}
\renewcommand*{\rmdefault}{MinionPro-\Mn@Text@Fig} 
\makeatother

% The above can be compressed to
% \renewcommand*{\rmdefault}{MinionPro-OsF}
% but in the former coding it mirrors the way 
% that the selection is defined in the package.

\begin{document}
\noindent
Text figures: 0123456789
\par\noindent
Math figures: $0123456789$
\end{document}

起初我不愿意在这个网站上回答我自己的问题,但后来我认为它可能对某些人有用。此外,它看起来不错,因为它在某种程度上与选择使用 Libertine 系列和 排版时处理同一问题的方法“一致” newtxmath

相关内容