[XeTeX] The future of XeTeX

Adam Twardoch (List) list.adam at twardoch.com
Mon Jul 30 23:33:45 CEST 2012


I cannot comment on how 100% compatible LuaTeX and XeTeX are when it
comes to the "core" set of TeX language and when only TeX-native fonts
are used. It's possible they are 100% compatible, or that they're not --
I don't know much about this.


* XeTeX has several commands that were introduced in pdfTeX and are
native to LuaTeX, and XeTeX reimplements them in a way that I believe is
compatible. These commands include \pdfpageheight, \pdfpagewidth,
\pdfsavepos and some others.

* XeTeX has some commands that are native to XeTeX only such as
\XeTeXpicfile, \XeTeXpdffile, \XeTeXmathaccent, \XeTeXvariation,
\XeTeXOTfeaturetag, \XeTeXuseglyphmetrics, \XeTeXglyph and some others.
You can use them in XeTeX but not in LuaTeX

* I presume LuaTeX also has some commands or syntax aspects (esp. the
injected Lua code) that will run in LuaTeX but not XeTeX

* Even with the same core set of commands, if using OpenType fonts, the
results between LuaTeX and XeTeX will necessarily vary. LuaTeX and XeTeX
use different mechanisms when it comes to extracting glyph metrics,
kerning, other positioning commands, and also different mechanisms when
it comes to processing things like OpenType contextual alternates etc.
-- and by using different mechanisms, it by necessity arrives at results
that differ slightly.

No known OpenType Layout engine out there (Microsoft Uniscribe, Monotype
WorldType, Bitstream Panorama, Adobe World composer, ICU Layout,
HarfBuzz, Pango, or the LuaTeX engine) is 100% compatible with any
other, so the same line, or even word, may be typeset slightly
differently with each of those layout engines. This will, in the end,
necessarily result in different glyphs being used at times, different
line-breaking being generated etc. When it comes to Unicode and
OpenType, it's much more complex than the original 8-bit Western world,
and cross-platform compatibility is no longer a goal that can be
achieved at this time.

I'd say the situation is similar to the world of web browsers: HTML, CSS
and JavaScript are being actively developed, but some snapshots of the
development are strictly documented by the W3C, yet other factors come
into play so that a 100% pixel compatibility between Mozilla Firefox,
WebKit (Chrome or Safari), Microsoft Internet Explorer and Opera is not
achievable, and probably never will be.


On 12-07-30 23:12, Philip TAYLOR wrote:
> Zdenek Wagner wrote:
>> If only Unicode support and access to system fonts are concerned, a
>> replacement already exists, namely luatex.
> I have held back from experimenting with LuaTeX because I have
> been led to believe, from this list and elsewhere, that LuaTeX
> and XeTeX are not in 1:1 correspondence in terms of the syntax
> and semantics of some non-Lua-related features.  Are you able
> to comment on this from a position of knowledge ?  Or, from the
> converse perspective, would you be able to assure me and others
> that all extant XeTeX code will execute in LuaTeX without error
> and produce a PDF that is visually indistinguishable from the
> PDF that XeTeX would produce using the same source ?
> Philip Taylor
> --------------------------------------------------
> Subscriptions, Archive, and List information, etc.:
>  http://tug.org/mailman/listinfo/xetex


May success attend your efforts,
-- Adam Twardoch
(Remove "list." from e-mail address to contact me directly.)

More information about the XeTeX mailing list