21

If we compare these three text lines

Linné's naming scheme.

{Linné'}s naming scheme.

{{Linné}'}s naming scheme.

typeset them in MinionPro, and look at the final pdf

enter image description here

we note that only the last line leads to a barely acceptable result. The reason: MinionPro has wrong apostrophe kerning settings. (In fact, the settings are so bad that languages with many apostrophes, such as French, cannot be typeset with the standard MinionPro package at all.)

The best solution would be to improve MinionPro. But the package is not maintained, unfortunately. There exists an underground apostrophe-friendly version of MinionPro, but it is a hack.

Is there a way to adjust the kerning of the apostrophe within a latex macro? (I use the dvi-ps-pdf route, with MinionPro and microtype, pdflatex and texlive 2014; the fonts are .pfb, thus NOT opentype, but postscript.)

I tried the suggestion

\SetExtraKerning
  [ unit     = space   ]
  { encoding = {OT1,T1,LY1} }
  {
    '  = {3000, }
  }

but with no success.

P.S A minimal example is this:

\documentclass{book} 

\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}      
\usepackage{MinionPro}      
\usepackage[british]{babel}
\usepackage{microtype} 

\begin{document}

Linné's naming scheme.

{Linné'}s naming scheme.

{{Linné}'}s naming scheme.

\end{document}

P.P.S. There is a related, but smaller issue with the kerning of the glyph " (double quote) in MinionPro.

2
  • Which TeX engine do you use, and what's the name of the font file that contains the Minion Pro font -- is it an OpenType font? It would be helpful if you expanded your code snippets into an MWE.
    – Mico
    Jan 10, 2015 at 7:45
  • 1
    Can you post a screenshot of your result and a minimal working example (MWE)? Jan 10, 2015 at 7:49

1 Answer 1

26

A solution is to load MinionPro with the option loosequotes

\usepackage[loosequotes]{MinionPro}

MWE:

\documentclass{book}

\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[loosequotes]{MinionPro}
\usepackage[british]{babel}
\usepackage{microtype}

\begin{document}

Linné's naming scheme.

{Linné'}s naming scheme.

{{Linné}'}s naming scheme.

\end{document} 

enter image description here

From the MinionPro manual:

loosequotes

The quote signs of MinionPro are set rather tight. This can lead to undesirable spacing for apostrophes. The loosequotes option slightly increases the side bearings of quotes. This option requires pdfTEX 1.40 and microtype 2.0. Beware that this option prevents hyphenation of words containing apostrophes. Such words will require explicit hyphenation commands \- .

If you want to use the \SetExtraKerning feature you have to load microtype with the option kerning=true

\usepackage[kerning=true]{microtype}

MWE:

\documentclass{book}

\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{MinionPro}
\usepackage[british]{babel}
\usepackage[kerning=true]{microtype}

\SetExtraKerning
  [ unit     = space   ]
  { encoding = {OT1,T1,LY1} }
  {
    '  = {3000, }
  }

\begin{document}

Linné's naming scheme.

{Linné'}s naming scheme.

{{Linné}'}s naming scheme.

\end{document}

enter image description here

For completeness, if you want to change both the spacing before and after that character, use something like

\SetExtraKerning
  [ unit     = space   ]
  { encoding = {OT1,T1,LY1} }
  {
    '  = {500, 400}
  }

where 500 denotes the spacing before and 400 the spacing after the character (in thousandths of 1em).

6
  • True, but even that is often tight (I had forgotten to mention this); is there a way to get the command \SetExtraKerning to work properly?
    – user64520
    Jan 10, 2015 at 9:36
  • @MotionMountain See the edit. Jan 10, 2015 at 9:45
  • 1
    Thank you! To complete the answer for future generations: by adding a number AFTER the expression 3000, - such as in 3000,1000 - we can also increase the kerning AFTER the apostrophe.
    – user64520
    Jan 10, 2015 at 10:34
  • @MotionMountain You're welcome. Jan 10, 2015 at 10:36
  • But how does one then take care of this case: He said ``Hallo". Now the left and the right quotation marks differ...
    – user64520
    Jan 10, 2015 at 12:59

You must log in to answer this question.