[XeTeX] XeTeX, XeTeXpicfile, and counter-intuitive behaviour

Zdenek Wagner zdenek.wagner at gmail.com
Thu Dec 1 17:38:04 CET 2011


2011/12/1 Heiko Oberdiek <heiko.oberdiek at googlemail.com>:
> On Thu, Dec 01, 2011 at 04:51:14PM +0100, Zdenek Wagner wrote:
>
>> 2011/12/1 Philip TAYLOR <P.Taylor at rhul.ac.uk>:
>> >
>> >
>> > Heiko Oberdiek wrote:
>> >
>> >> No, it's a whatsit. It is *not* discarded, but it isn't a box.
>> >
>> >
>> > Right, so why isn't the \eject honoured ?
>> >
>> If I remember it well, whatsit is dimensionless, thus if \XeTeXpicfile
>> reserves a space, it cannot be just whatsit. Anyway, discardable items
>> are discarded at the break. They must not be discarded after whatsit.
>
> Knuth has decided otherwise. Discardable items are discarded at
> top of a new page unless there is a box. I have already quoted
> "The TeXbook".
>
Not exactly, it is important that whatsit is not a discardable item.
If if occurs at the top of the page, all following discardable items
should be included in the page. I have not tried your example but I
think it \vfil\eject will be ignored. There is no \immediate, thus
\write will be stored and executed on \shipout. \vfil\eject are still
on the top of the page, \vfil is discardable and will be discarded,
\eject will do nothing because there is no page to be ejected. ABC
will go to the page, \bye will invoke \shipout resulting (probably)
with underfull vbox and \write16. Try my example with \special as I
posted some time ago.

> \write16{Hello World}
> \vfil\eject
> ABC
> \bye
>
> Yours sincerely
>  Heiko Oberdiek
>
>
> --------------------------------------------------
> Subscriptions, Archive, and List information, etc.:
>  http://tug.org/mailman/listinfo/xetex



-- 
Zdeněk Wagner
http://hroch486.icpf.cas.cz/wagner/
http://icebearsoft.euweb.cz



More information about the XeTeX mailing list