我正在使用它Minion Pro
作为我的文档的主字体,并且希望使用 Consolas 作为我的代码列表。
fontspec
我知道我可以使用和设置等宽字体setmonofont
,但似乎不能与我用来设置文档主字体的和包fontspec
结合使用。MinionPro
MnSymbol
我不想使用fontspec
它来设置我的主要字体,因为全大写和小型大写的标题不能像包那样很好地呈现MinionPro
。
我的问题:有没有办法可以使用该MinionPro
包来设置我的主字体并告诉fontspec
“忽略”主字体并只设置单字体。否则,还有其他方法可以实现我想要实现的目标吗?
答案1
我建议你加载MinionPro
选项onlymath
。据我了解,它MnSymbol
主要用于数学。
使用\setmainfont
设置为数学字体。全大写和小写的问题是因为优化了间距,而不会自动为您执行此操作。但解决方案很简单,使用fontspec
的功能。还可以启用opentype 功能,尽管我发现它的空间不足以容纳全大写标题。Minion Pro
MinionPro
fontspec
\addfontfeatures{WordSpace=...}
fontspec
Kerning=Uppercase
cpsp
确实,我使用MinionPro
包很长一段时间了。但fontspec
之前阻止我切换到的唯一原因是缺乏对 microtype 的支持xetex
。现在我只使用fontspec
和LuaTeX
。这是一个比更好的解决方案,MininonPro
因为您可以轻松访问像这样的功能case
,当排版为全大写时,它将选择正确的标点符号。还有更多。
然而,对于Minion Pro
字体,我发现它有一些问题fontspec
。至少在我的 Mac 上,fontspec
选择正确的粗细和视觉尺寸存在问题。请参阅https://github.com/wspr/fontspec/issues/105。
就我而言,medium
体重导致fontspec
或luatex
混淆。所以我将以下内容添加到otfl-blacklist.cnf
。
MinionPro-Medium.otf
MinionPro-MediumCapt.otf
MinionPro-MediumSubh.otf
MinionPro-MediumDisp.otf
并使用以下内容设置我的字体以获得正确的光学尺寸。
\setmainfont[
SizeFeatures = {
{Size = -8.41, OpticalSize = 8},
{Size = 8.41-13.1, OpticalSize = 11},
{Size = 13.1-20.0, OpticalSize = 19},
{Size = 20.0-, OpticalSize = 72}},
Ligatures = {Required, Common, Contextual, TeX},
Numbers = {OldStyle, Proportional},
RawFeature = {expansion = default},
UprightFeatures = {RawFeature = {protrusion = mnr}},
BoldFeatures = {RawFeature = {protrusion = mnrb}},
ItalicFeatures = {RawFeature = {protrusion = mni}},
BoldItalicFeatures = {RawFeature = {protrusion = mnib}}
]{Minion Pro}
其中mnr
,mnrb
等是我根据MinionPro
包的
答案2
您可以尝试数学规范包裹:
\documentclass[a4paper]{article}
\usepackage{amsmath}
\usepackage{mathspec}
\setmathfont(Digits,Latin,Greek){Minion Pro}
\setmainfont{Minion Pro}
\setmonofont{Inconsolata}
\usepackage{MnSymbol}
\begin{document}
a$\alpha\sum b=c$\texttt{aaa}
\end{document}
但是,我并没有进行广泛的测试。
答案3
我看不到任何问题
\listfiles
\documentclass{scrartcl}
\usepackage{fontspec}
\setmainfont{Minion Pro}
\setsansfont{Myriad Pro}
\setmonofont{Consolas}
\usepackage{listings}
\begin{document}
Mininpro \textsf{Myriad Pro} \texttt{Consolas}
\begin{lstlisting}[basicstyle=\ttfamily\small]
\setmainfont{Minion Pro}
\setsansfont{Myriad Pro}
\setmonofont{Consolas}
\end{lstlisting}
\end{document}