XeTeXWhy is there huge kerning in Δ(σ) and how to reduce it automatically?

Information and discussion about XeTeX, an alternative for pdfTeX based on e-Tex
Post Reply
user49915
Posts: 81
Joined: Wed Apr 17, 2019 12:51 pm

Why is there huge kerning in Δ(σ) and how to reduce it automatically?

Post by user49915 »

Consider the input

Code: Select all

\RequirePackage{ifthen}
\RequirePackage{ifxetex,ifluatex}
\newif\ifxetexorluatex
\ifxetex
  \xetexorluatextrue
\else
  \ifluatex
    \xetexorluatextrue
  \else
    \xetexorluatexfalse
  \fi
\fi
\documentclass{standalone}
\ifxetexorluatex
\tracinglostchars=2
\usepackage{fontspec}%% needed only for xelatex.
\usepackage[american,british,french,norsk,german,ngerman]{babel} % warning: last language option will be chosen for fixed text of environments like example or definition (in svmono)
\usepackage{mathtools}%%% loads amsmath internally
\mathtoolsset{mathic=true} %%% See http://tex.stackexchange.com/a/3496/
\usepackage{amssymb}
\usepackage[math-style=ISO]{unicode-math}
\setmainfont[Ligatures=TeX]{TeX Gyre Termes}
\setsansfont{TeX Gyre Heros}[Scale=0.88]%%% Somewhat ok.
\setmonofont{TeX Gyre Cursor}%%% No explicit turning on ligatures for the monospaced font.
\setmathfont[Ligatures=TeX]{TeX Gyre Termes Math}
\setmathfont[Ligatures=TeX,range={\setminus}]{Asana Math}
\else
\usepackage[T2A,T1]{fontenc}%%% The fontenc package is explicitly loaded with the T2A,T1 argument simply to avoid the warning of babel about missing T2A in the log. As for the order of loading, David Carlisle says in https://tex.stackexchange.com/questions/241452/generating-a-template/241479#241479 that fontenc produces information needed by inputenc (which, however, delays processing till the beginning of the document, which makes the order of these two packages irrelevant). Moreover, in the examples in the documentation of newtx fontenc is always loaded before newtx.
\usepackage[utf8]{inputenc} % Native LaTeX umlaut support
\usepackage[american,british,french,norsk,german,ngerman]{babel} % warning: last language option will be chosen for fixed text of environments like example or definition (in svmono)
\usepackage{newtxtext}% Load it after babel according to Michael Sharpe's newtx manual from Dec 14, 2017.
\usepackage[slantedGreek]{newtxmath}%% Should be loaded after the text font according to its manual. The default uppercase Greek letters should be slanted according to the Springer manual.
\usepackage{courier}
\usepackage{mathtools}%%% loads amsmath internally
\mathtoolsset{mathic=true} %%% See https://tex.stackexchange.com/a/3496/
\fi
\usepackage[babel=true,verbose=errors]{microtype}%%% Microtype documentation says it determines the best settings itself, depending on the compiler and the driver.
\begin{document}
\(\Delta(\sigma)\)
\end{document}
All the fonts are Times-like. Depending on which compiler you use (see the attachment), you get different kerning in and around the parentheses ( ). In particular, for {xe|lua}latex, the kerning seems exorbitantly larger than for pdflatex; the output is wider although the single symbols are less slanted and/or thinner. Why does it happen and how to get properly small kerning when compiling with {xe|lua}latex?
Attachments
Compiled with xelatex
Compiled with xelatex
q.xelatex.jpg (6.15 KiB) Viewed 17441 times
Compiled with pdflatex
Compiled with pdflatex
q.pdflatex.jpg (6.44 KiB) Viewed 17441 times
Compiled with lualatex
Compiled with lualatex
q.lualatex.jpg (6.15 KiB) Viewed 17441 times

Recommended reading 2024:

LaTeXguide.org • LaTeX-Cookbook.net • TikZ.org
LaTeX Beginner's Guide LaTeX Cookbook LaTeX TikZ graphics TikZによるLaTeXグラフィックス
kaiserkarl13
Posts: 707
Joined: Tue Mar 25, 2008 5:02 pm

Why is there huge kerning in Δ(σ) and how to reduce it automatically?

Post by kaiserkarl13 »

My guess is that there is a font substitution for the slanted Dellta symbol (which is an unusual glyph). I don't get any of that extra space if I just use txfonts, newtxmath, or mathptmx without substituting the main text fonts for something else (as you did in your example).
user49915
Posts: 81
Joined: Wed Apr 17, 2019 12:51 pm

Why is there huge kerning in Δ(σ) and how to reduce it automatically?

Post by user49915 »

So, does that mean that I have to create a feature file with n^2 combinations myself, where n is the number of characters present in the font (or at least the number of characters I use)? Is there nothing already available?
user49915
Posts: 81
Joined: Wed Apr 17, 2019 12:51 pm

Why is there huge kerning in Δ(σ) and how to reduce it automatically?

Post by user49915 »

kaiserkarl13 wrote:txfonts, newtxmath, or mathptmx
All these go with pdflatex. As for the OTF fonts, the situation is different.
user22741
Posts: 35
Joined: Fri Nov 09, 2018 12:03 pm

Why is there huge kerning in Δ(σ) and how to reduce it automatically?

Post by user22741 »

user49915 wrote:
So, does that mean that I have to create a feature file with n^2 combinations myself, where n is the number of characters present in the font (or at least the number of characters I use)? Is there nothing already available?
No need for n^2 combinations, just for the few ones that cause a problem
user49915
Posts: 81
Joined: Wed Apr 17, 2019 12:51 pm

Why is there huge kerning in Δ(σ) and how to reduce it automatically?

Post by user49915 »

user22741 wrote:No need for n^2 combinations, just for the few ones that cause a problem
The problem with that is that even if I had time for all the combinations that cause problems (the above is simply one example out of many), I'm not educated enough in typesetting to get the best kerning values.
Post Reply