9

I need italic and non-italic \lambda in the same document. Since the \mathit{\lambda} does not work, I got idea to simulate italic by changing fonts (Times New Roman for italic lambda, and Latin Modern for non-italic).

I made the following example based on answers from here and here

\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}

This example does not work, it produce - instead of lambda in Times font. What is wrong in this example?

Is there a easier way to make italic and non-italic lambda in the same document?

P.S. I am using Times New Roman in text mode, and Latin modern in math mode in document.

0

2 Answers 2

12

Latin Modern math doesn't blend with Times New Roman. You're better using NewTX:

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

\begin{document}

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

\end{document}

enter image description here

If you insist in using Latin Modern math symbols, here's how you can do:

\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}

enter image description here

11
  • What do you mean with Latin Modern math doesn't blend with Times New Roman. Is it impossible to use these two fonts in same equation?
    – Dejan
    Feb 24, 2015 at 13:42
  • 1
    @Petar They're typographically incompatible with each other.
    – egreg
    Feb 24, 2015 at 13:42
  • Ok, I didn't know this. I was thinking that I can mix any two fonts. However, the previous example does not work if we for example include package amsthm. The error is that \openbox is already defined.
    – Dejan
    Feb 24, 2015 at 13:47
  • @Petar Load amsthm and amsmath before newtxmath.
    – egreg
    Feb 24, 2015 at 13:55
  • 1
    @Petar You can mix any two fonts. egreg was talking about style and taste. Typographically incompatible means that they look bad together.
    – LaRiFaRi
    Feb 24, 2015 at 13:58
3

If you are able to use Lua- or XeLaTeX, I would recommend the package 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}

enter image description here

2
  • Tnx for answer, however I am looking for solution in Latex, I forgot to specify this in question.
    – Dejan
    Feb 24, 2015 at 13:23
  • 1
    @Petar - Both XeLaTeX and LuaLaTeX are LaTeX. Their difference to pdfLaTeX is that they use other underlying engines to accomplish the typesetting jobs.
    – Mico
    Apr 12, 2016 at 9:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .