在与 MinionPro 一起使用时,如何使 Myriad 中的 en/em 破折号起作用

在与 MinionPro 一起使用时,如何使 Myriad 中的 en/em 破折号起作用

我使用 MinionPro 作为文档正文,使用 Myriad 作为图片/表格标题。由于我无法同时加载 MinionPro 和 Myriad 包,因此我使用\renewcommand{\sfdefault}{\Myriad-LF}序言中的调用加载无衬线字体的 Myriad 字体。然后我使用包将图片/表格标题设置为使用无衬线字体caption

效果很好,但短破折号 ( --) 和长破折号 ( ---) 无法正确解释为长破折号;它们会显示为两个或三个连字符。下面是一个最小工作示例。有什么想法吗?

\documentclass[12pt]{article}

% Set fonts (Minion Pro, Myriad):
\usepackage[lf]{MinionPro} % 'lf' option to use full-height (lining) figures

% We can't use package Myriad here as it conflicts with MinionPro, so
% instead we declare the Myriad fonts manually.
% Set body sans serif (\textsf) text to Myriad with lining figures:
\renewcommand{\sfdefault}{Myriad-LF}

% Set math sans serif (\mathsf) alphabet to Myriad with lining figures:
\SetMathAlphabet{\mathsf}{normal}{OML}{Myriad-LF}{m}{n}
\SetMathAlphabet{\mathsf}{bold}{OML}{Myriad-LF}{b}{n}

\usepackage[margin=10pt,font={small,sf},labelfont={sf,bf},labelsep=endash]{caption}

\begin{document}
Some text.
\begin{figure}
  \centering
  \ldots
  \caption{The mass of the coal storage piles ranged from 8--20 megatonnes.}
  \label{fig:coal}
\end{figure}
\end{document}

这将输出以下内容,并突出显示不正确的破折号。

mwe 图像

答案1

包裹MinionProMyriadPro来自字体专家可以一起使用。默认情况下,不会通过 更改数学字体MyriadPro。使用该sansmath选项,将调整的无衬线字体\mathsf,并定义一个额外的数学版本,以允许在一个文档中使用两种具有匹配数学符号的数学字体(请参阅文档为了那个原因)。

因此,代码

\documentclass[12pt]{article}

% Set fonts (Minion Pro, Myriad Pro):
\usepackage[lf]{MinionPro} % 'lf' option to use full-height (lining) figures
\usepackage[lf, sansmath, scale=0.91]{MyriadPro}

\usepackage{caption}
\DeclareCaptionFont{sfmath}{\mathversion{sans}}
\captionsetup{margin=10pt,font={small,sf, sfmath},labelfont={sf,bf},labelsep=endash}

\begin{document}

Some text with $a \times \mathsf{b} = c / d$.

\begin{figure}[h]
  \centering
  \ldots
  \caption{The mass of the coal storage piles ranged from 8--20
    megatonnes and $a \times b = c / d$.}
  \label{fig:coal}
\end{figure}
\end{document}

产生以下输出:

Minion 和 Myriad 位于一个文档中

相关内容