[XeTeX] tabular getting flattened into one line

Jonathan Kew jonathan_kew at sil.org
Thu Sep 21 15:18:32 CEST 2006


On 20 Sep 2006, at 1:49 am, Cyril wrote:

> I've tried getting it as simple as possible and did a test run with
> LaTeX, with no success either.
>
> \documentclass[a4paper,10pt]{article}
> \lineskiplimit=-1000pt
>
> \begin{document}
>
> \begin{tabular}{ll}
> French  & English\\
> German  &  Dutch\\
>
> \end{tabular}
>
> \end{document}

This confirms that the "flattened" tabular is nothing to do with  
xetex itself, as plain latex does the same thing.

It appears that the tabular environment sets \baselineskip to zero,  
which you can confirm by inserting "\showthe\baselineskip" within the  
environment (compare the result outside). It then relies on the  
height of the actual line contents to control the spacing. I expect  
it automatically inserts invisible "struts" so as to maintain  
consistent spacing (unless large symbols are present). Setting an  
extremely negative \lineskiplimit defeats this, as the lines are then  
allowed to overlap, and there is no default \baselineskip (as with  
running text) to fall back on.

As Will pointed out, the line-spacing issues that this \lineskiplimit  
setting may have been designed to work around have since been changed  
in xetex, so the setting is probably unnecessary. If you do still  
need a negative lineskiplimit because certain tall/deep characters  
disturb the line spacing, then just a small negative value (a few  
points) is likely to be sufficient, and in this case tabular  
environments will not be affected by it because their baselineskip is  
such that the overlap will be greater than this, and lineskip will  
still kick in.

JK



More information about the XeTeX mailing list