Compare these two images:

enter image description here    enter image description here

On the left you have correct baselineskip on all line. On the right you have larger baselineskip for line 5 because of the acute accent on É (in Études).

Looking into the font (an OTF font) I see that the height of the cap E is 700 units, the height of the É is 919 units. This is so big that it forces TeX to increase the baselineskip.

In the good-ole TeX with TFM files, this problem was extremely easy to solve: I would just change the CHARHT entry in the TFM file. This because the TeX character model distinguishes between font data (in the PFB file) and metric data (in the TFM and VF files).

But now I'm using XeLaTeX with fontspec, and there is no TFM file anymore, only a TTF or OTF file. And of course there is no way to change any glyph box because there is no independent glyph box, only the real dimensions of the bounding box of the glyph contour.

Is there some parameter in XeTeX and/or fontspec allowing me to constrain the maximal character height of a given font? Is there some other solution to the problem of unstable baselineskips?

  • 2
    you could set \lineskiplimit=-2pt which would allow up to 2pt of overlap before it gives up on baselineskip Jan 20 '20 at 15:30
  • 1
    That's great David, thank you! You always have the right answer. I'm most grateful for all your answers in the last 22 years (I found a "Help needed" mail I sent you in April 1998!), thanks!
    – yannis
    Jan 20 '20 at 15:36
  • See tex.stackexchange.com/q/258297
    – Thérèse
    Jan 20 '20 at 15:37

You could set


which would allow up to 2pt of overlap before it gives up on baselineskip

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.