我喜欢这个mathdesign
包,但想在 中使用 Myriad Pro 章节标题LuaLaTeX
。这可能吗,还是我必须将 OTF 字体转换为 T1?(我对 *TeX 中的字体问题一无所知。)命令\setsansfont
和mathdesign
包似乎不能一起工作,尽管 mathdesign 中没有提到 fontspec。这是一个 MWE,显示了通过 LuaLaTeX 运行时不起作用的内容。
\documentclass{article}
\usepackage [english] {babel}
\usepackage {blindtext}
\usepackage {titlesec}
\usepackage {etoolbox}
\usepackage {ifluatex}
\titleformat{\section}{\Large\sffamily\bfseries}{\thesection}{1em}{}
\ifbool{luatex} {
\usepackage {fontspec}
\setsansfont [Ligatures=TeX,Scale=MatchLowercase] {Myriad Pro}
\usepackage [charter] {mathdesign}
}{\usepackage [T1] {fontenc}
\usepackage [charter] {mathdesign}
\renewcommand*{\sfdefault}{phv} % Adobe Helvetica
}
\begin{document}
\section {A section}
\blindmathpaper
\end{document}
该文件的开头如下所示(请注意缺少无衬线部分标题)
如果我mathdesign
之前加载包,fontspec
我会得到正确的部分标题字体,但rmdefault
字体会切换到 CM。
有趣的是,在所有情况下,数学字体仍然是 Charter。
答案1
您还必须设置正确的字体编码才能选择正确的字体(对于 LuaLaTeX 版本):
\titleformat{\section}
{\fontencoding{EU2}\Large\sffamily\bfseries}
{\thesection}
{1em}
{}
\documentclass{article}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{titlesec}
\usepackage{ifluatex}
\ifluatex
\usepackage {fontspec}
\setsansfont [Ligatures=TeX,Scale=MatchLowercase] {Myriad Pro}
\usepackage[T1]{fontenc}
\usepackage[charter]{mathdesign}
\titleformat{\section}
{\fontencoding{EU2}\Large\sffamily\bfseries}
{\thesection}
{1em}
{}
\else
\usepackage[T1]{fontenc}
\usepackage[charter]{mathdesign}
\renewcommand*{\sfdefault}{phv} % Adobe Helvetica
\titleformat{\section}
{\Large\sffamily\bfseries}
{\thesection}
{1em}
{}
\fi
\begin{document}
\section {A section}
\blindmathpaper
\end{document}
为了完整起见,这里有一个仅有 LuaTeX 的版本,其中带有 Herbert 在评论中指出的字体:
\documentclass{article}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{titlesec}
\usepackage[charter]{mathdesign}
\usepackage[no-math]{fontspec}
\setmainfont[Ligatures=TeX,
BoldFont={CharterITC Bold BT},
BoldItalicFont={CharterITC Bold Italic BT},
]{CharterITC BT}
\setsansfont[Ligatures=TeX,Scale=MatchLowercase]{Myriad Pro}
\titleformat{\section}{\Large\sffamily\bfseries}{\thesection}{1em}{}
\begin{document}
\textbf{Abc}
\section {A section}
\blindmathpaper
\end{document}
指定字体的方式可能需要有所不同(这里我将字体放在系统字体中)。请注意,必须手动指定粗体和粗斜体版本,因为默认值是“黑色”,这让人fontspec
无法理解。我添加了一个粗体字作为示例。