[XeTeX] Performance [was: Some fontspec details]

Christopher Creutzig christopher at creutzig.de
Fri Dec 3 13:49:41 CET 2004


Adam Lindsay wrote:

> What does concern me is the occasional infinite loop that XeTeX spins
> into. I presume this is from failing to find a break in a word for an
> overfull box? Does anything else set it off? Has anyone had success in
> staving it off?

  As I had sent you in private mail some months ago, I can easily
reproduce the behaviour in ConTeXt (not yet in plain, sorry):

\usetypescriptfile [type-xtx]
\definetypeface[Hoe][rm][serif][hoefler]  [default][encoding=unicode]
\setupbodyfont [Hoe,rm]%

\starttext
\hbox to 2pt{abcde}
\stoptext

I'm not sure what (Xe)ConTeXt puts into this box in addition to the font
information and the characters, but it's an awfully complicated box.  I
tried

\usetypescriptfile [type-xtx]
\definetypeface[Hoe][rm][serif][hoefler]  [default][encoding=unicode]
\setupbodyfont [Hoe,rm]%

\starttext
\showboxbreadth=255
\showboxdepth=255
\setbox0=\hbox{abcde}
\showbox0
\stoptext

and interrupted XeTeX after some minutes.  The \showbox output starts 
with something like

 > \box0=
\hbox(8.65625+3.34375)x29.59222
.\*Hoe12ptrmtf*: abcde
.\hbox(0.0+0.0)x0.0, shifted 0.00002
..\hbox(0.0+0.0)x0.0, shifted 0.00002
...\hbox(0.0+0.0)x0.0, shifted 0.00002
....\hbox(0.0+0.0)x0.0, shifted 0.00002
.....\hbox(0.0+0.0)x0.0, shifted 0.00002
......\hbox(0.0+0.0)x0.0, shifted 0.00002
.......\hbox(0.0+0.0)x0.0, shifted 0.00002
........\hbox(0.0+0.0)x0.0, shifted 0.00002
.........\hbox(0.0+0.0)x0.0, shifted 0.00002
..........\hbox(0.0+0.0)x0.0, shifted 0.00002
...........\hbox(0.0+0.0)x0.0, shifted 0.00002
[...]
...............................................................................
...............................................................................
...............................................................................
..................\hbox(16383.99998+0.00743)x16383.99998, shifted 0.0081 []
...............................................................................
...............................................................................
...............................................................................
..................\hbox(0.0081+16383.99998)x0.00743, shifted 4.05064, 
display [
]
...............................................................................
...............................................................................
...............................................................................
..................Bad link, display aborted.
...............................................................................
...............................................................................
...............................................................................
.................\hbox(16383.99998+0.00743)x16383.99998, shifted 0.0081
[...]
...............................................................................
...............................................................................
...............................................................................
.................\hbox(0.0081+16383.99998)x0.00743, shifted 4.05064, display
...............................................................................
...............................................................................
...............................................................................
..................\*Hoe7ptmmmb*: ^^@
...............................................................................
...............................................................................
...............................................................................
..................\*9ptrmbf* <C9><AB>
...............................................................................
...............................................................................
...............................................................................
..................\*12ptmmmr* {
...............................................................................
...............................................................................
...............................................................................
..................\*Hoe9ptmmmi*: ^^A

and so on.  I'm absolutely not sure how much of this material has been
introduced by ConTeXt and how much of it is garbage introduced by some
XeTeX bug, possibly a memory loop.

regards,
	Christopher Creutzig



More information about the XeTeX mailing list