[XeTeX] little question
Jonathan Kew
jonathan_kew at sil.org
Fri Sep 14 00:13:00 CEST 2007
On 13 Sep 2007, at 10:15 pm, jadolov k wrote:
> Actually, I use the standard xetex installation that comes with Tex
> Live 2007; I use the xdvipdfmx via the TexShop engine.
OK.
> But, unfortunately, the speed ratio is really the one I mentioned.
> I thought it was the normal speed in TeX (since I always use
> xetex), but once I've tried pdfLaTeX and I have been astonished
> about the speed...
Well, it's true that if you use only "traditional" TeX fonts via TFM
files, typesetting is faster... that's true also if you use xetex to
process such a document. There is a speed penalty for using Unicode/
OpenType fonts directly. But it shouldn't be *that* bad!....
> I will provide an example file soon.
Looking at your example, I can't run it directly as it stands, as I
don't have all the same Adobe fonts. But I suspect that one factor,
at least, may be the way you're defining font features, using
\addfontfeature within commands such as \bass, \prim,
\cftchapterfont, \@makefnmark, and many others. While \addfontfeature
can be handy, it makes the fontspec package and xetex engine work
very hard, constructing a new font specification (which involves
considerable examination of the fonts available), even if it ends up
re-using the same final font as a previous time.
If you look in the .log file, you'll see many, many reports from
fontspec of the form:
> Package fontspec Info: Defining font family for "Minion Pro" with
> options [Mapp
> ing=tex-text, Numbers={OldStyle,Proportional},,Numbers=
> {Monospaced,OldStyle}] o
> n input line 515.
Each of these represents a relatively time-consuming operation, so it
would be good to minimize them.
It's much more efficient, therefore, to use fontspec's
\newfontinstance command to pre-define commands for any font
instances you will be using frequently, and then use these within
your other macros.
(I see that Will has just responded with a similar comment while I've
been writing! But I'll go ahead and send this too.)
JK
More information about the XeTeX
mailing list