[XeTeX] Problem with leading with Charis SIL or Doulos SIL

Jonathan Kew jonathan_kew at sil.org
Mon Mar 6 22:52:58 CET 2006


On 6 Mar 2006, at 9:12 pm, Lammert, Richard A. wrote:

> I seem to be doing something wrong to get specified leading with  
> Charis
> SIL and Doulos SIL (I am quite a novice with TeX, so I am undoubtedly
> missing something--please let me know).
>
> I have used the following definitions in the preamble to set up 14  
> point
> leading:
>
> \newcommand{\basetext}{\fontspec{Gentium}\fontsize{12}{14pt} 
> \selectfont}
> \newcommand{\basetwo}{\fontspec{Charis
> SIL}\fontsize{12}{14pt}\selectfont}
> \newcommand{\basethree}{\fontspec{Doulos
> SIL}\fontsize{12}{14pt}\selectfont}
>
> However, only the Gentium comes out with 14 point leading; Charis SIL
> comes out at about 20 point and Doulos SIL comes out at about 19  
> point.

Charis SIL and Doulos SIL are a bit unusual, in that both include  
quite a lot of "built-in leading" in the font: the font metrics  
specify "ascent" and "descent" values that provide room for multiple  
diacritics on the letters. This means that XeTeX "sees" the lines of  
text as having greater height and depth than the visible glyphs of  
normal English characters would lead you to believe.

As a result, TeX's rules for baselines will often end up abandoning  
\baselineskip (the "normal" interline spacing) and using \lineskip  
instead (which with other fonts only happens if you have an unusually  
large character in the line).

To prevent this happening, you can try setting \lineskiplimit to a  
negative value (exactly how much is best will depend on the font  
sizes you're using). Try something like

\newcommand{\basetwo}{\fontspec{CharisSIL}\fontsize{12}{14pt}\selectfont
	\setlength\lineskiplimit{-6pt}}

and see if that achieves what you're looking for.

JK



More information about the XeTeX mailing list