如何制作斜体希腊字母 \lambda

如何制作斜体希腊字母 \lambda

\lambda我需要在同一文档中使用斜体和非斜体。由于这\mathit{\lambda}行不通,我想到通过更改字体来模拟斜体(Times New Roman 用于斜体 lambda,Latin Modern 用于非斜体)。

我根据以下答案制作了以下示例这里这里

\documentclass{article}
\usepackage{amsmath}
\usepackage{lmodern}     % set math font to Latin modern math 
\usepackage[T1]{fontenc}
\renewcommand\rmdefault{ptm} %change text font to Times New Roman


\DeclareMathVersion{mymath}
\DeclareSymbolFont{myletters}{T1}{ptm}{m}{it}
\SetSymbolFont{letters}{mymath}{T1}{ptm}{m}{it}
\DeclareSymbolFont{myoperators}{T1}{ptm}{m}{n}
\SetSymbolFont{operators}{mymath}{T1}{ptm}{m}{n}


\newenvironment{myfont}{\mathversion{mymath}}{}
\DeclareTextFontCommand{\mathmyfont}{\myfont}

% Define lambda with Times New Roman font
\newcommand{\lambdaTimes}{\mathmyfont{$\lambda$}}

\begin{document}

\begin{align}
\textrm{Lambda in Latin modern:} \lambda \\
\textrm{Lambda in Times New Roman:}\lambdaTimes
\end{align}
\end{document}

此示例不起作用,它生成-Times 字体中的 lambda。此示例中有什么问题?

有没有更简单的方法可以在同一个文档中制作斜体和非斜体 lambda?

PS 我在文本模式下使用 Times New Roman,在文档的数学模式下使用 Latin modern。

答案1

Latin Modern 数学与 Times New Roman 不相容。您最好使用 NewTX:

\documentclass{article}
\usepackage{newtxtext,newtxmath}

\begin{document}

The text is in Times; $\lambda\lambdaup$.

\end{document}

在此处输入图片描述

如果您坚持使用拉丁现代数学符号,请按照以下步骤操作:

\documentclass{article}
\usepackage{amsmath}
\usepackage{lmodern}     % set math font to Latin modern math
\usepackage[T1]{fontenc}
\renewcommand\rmdefault{ptm} %change text font to Times New Roman

\DeclareSymbolFont{myletters}{OML}{ztmcm}{m}{it}
\DeclareMathSymbol{\uplambda}{\mathord}{myletters}{"15}

\begin{document}

\begin{align}
\textrm{Lambda in Latin modern:} \lambda \\
\textrm{Lambda in Times New Roman:}\uplambda
\end{align}
\end{document}

在此处输入图片描述

答案2

如果您能够使用 Lua 或 XeLaTeX,我推荐 unicode-math 包:

% arara: lualatex

\documentclass{article} 
\usepackage{unicode-math}
\usepackage{fontspec}
\setmainfont{Times New Roman}
\usepackage{blindtext}

\begin{document} 
\blindtext
$\mathup{\lambda}\lambda$
\end{document}

在此处输入图片描述

相关内容