[Tex/LaTex] Upright greek math: `theta` with `textgreek` package too boldish

fontsgreekmath-mode

With the following MWE:

\documentclass[british]{article}
\usepackage[british]{babel}
\usepackage{textgreek}
\begin{document}
\LARGE
Normal text default font, italics and upright:

\textit{\straighttheta\straighttheta\straighttheta}\straighttheta\straighttheta\straighttheta \ (upright font is not correct)\\

Greek math, standard and upright (adjusted font):

$\theta\theta\theta\textnormal{\fontfamily{phv}\selectfont\straighttheta\straighttheta\straighttheta}$  (upright theta is too bold)\\

Latin math, standard and upright:

$xxx\mathrm{xxx}$
\end{document}

I get this result:

enter image description here

I don't know if it is typographically correct, but to me the upright theta seems too boldish compared with the italics of the standard math mode.

How can I get a correct upright theta?

I also tried to "artificially" enlighten theta using the method explained here, but was not able to adapt it to the right font.

Best Answer

The upright theta in these examples is not typographically correct.

Here's the problem. "Standard" Computer Modern does not "come" with upright greek letters, but with a slanted letter. The textgreek package provides a way around that problem, by using the cbgreek font, and defining \texttheta and so forth to "borrow" from them.

And that is fine ... but the cbgreek font uses the style of theta that looks like example (a) in the illustration below, not (b). These are not different letters, but variant forms of the theta (though unicode assigns separate numbers so that both can be present in a single font).

greek thetas

What then happens is that, in order to try to provide a non-script version of theta, textgreek is "borrowing" from either the Euler font (which is what is shown in your first example) or -- I think -- the symbol font (which occurs in your second, because you select Helvetica which textgreek "maps" to symbol).

Since these thetas were designed for quite different fonts they are a very poor match for computer modern -- each has a quite different design, weight and so forth.

Here are a few ideas:

  • Put up with a bad looking straight theta (OK, pehaps, if you only use it in one place).
  • Accept the scriptstyle theta that is part of the cbgreek font, and load textgreek and use \texttheta.
  • Take a quite different approach to greek letters outside maths, for instance by using XeLaTeX which will enable you to use unicode and any font you choose (though you will then have to consider matching math fonts).
  • Redefine \straighttheta. For instance, if you load the lgreek package (which has a different font, with a straight theta) you can redefine the \straighttheta command of textgreek to be {\begin{greek}j\end{greek}} However, although that produces a somewhat better match (I think) in some respects, it has its own problems in your example, because there is no slanted version of the lgreek font. But it's OK with math, because the math letters get taken from Computer Modern. The picture below shows an lgreek based theta in text alongside CM theta in math.

using lgreek