[XeTeX] XeLaTeX font selection

Bruno Voisin bvoisin at mac.com
Sat Oct 9 09:43:39 CEST 2004


Hi Will and other participants in this topic,

I'm not sure it's wise to wander too far from LaTeX's font naming and 
font selection scheme, when making AAT and OpenType fonts, as given to 
us by XeTeX, available to LaTeX. LaTeX is sub-optimal and an agony to 
use in many respects (for example, compared with ConTeXt); however, it 
is the dominant dialect of TeX around, because of its de-facto 
standardness. After a brief period of use, people will possibly, I'm 
afraid, abandon your font selection package when they realize it brings 
them too far from this standard.

There has been a variant of PSNFSS specially tailored for Textures, 
using the Textures names for the fonts and Textures' own encoding 
called LT1. Then for Times there were declarations like

	%<*ptm>
	\DeclareFontShape{LT1}{ptm}{m}{n}{<->Times}{}%
	\DeclareFontShape{LT1}{ptm}{m}{it}{<->TimesI}{}%
	\DeclareFontShape{LT1}{ptm}{m}{sl}{<->ssub * ptm/m/it}{}%
	%<nosc>\DeclareFontShape{LT1}{ptm}{m}{sc}{<->sub * ptm/m/n}{}%
	%<sc>\DeclareFontShape{LT1}{ptm}{m}{sc}{<->TimesSC}{}%

instead of

	\DeclareFontShape{T1}{ptm}{m}{n}{<-> ptmr8t}{}
	\DeclareFontShape{T1}{ptm}{m}{sc}{<-> ptmrc8t}{}
	\DeclareFontShape{T1}{ptm}{m}{sl}{<-> ptmro8t}{}
	\DeclareFontShape{T1}{ptm}{m}{it}{<-> ptmri8t}{}

It's all in a folder textures-psfonts in the Textures distribution, and 
I think it's somewhere on CTAN too. However it never was widely used, 
even among Textures users, just because it's not standard.

Same for Y&Y's LY1 encoding, which I consider far superior to the 
devious T1/TS1 combination, but which remains marginal, unfortunately, 
because it's no standard.

So for XeLaTeX there are too aspects: the names for the font instances, 
and the way to select them. Regarding names, there are already 
abbreviations for several of them in fontname. See 
/usr/local/teTeX/share/texmf.tetex/doc/fonts/fontname/fontname.dvi, and 
the various files in /usr/local/teTeX/share/texmf.tetex/fontname. For 
example, in weight.map you have:

	a Thin Hairline
	b Bold
	c Black
	d Demi
	h Heavy Heavyface
	j ExtraLight
	k Book
	l Light
	m Medium
	p Poster
	r Regular Roman
	s Semibold
	u Ultra UltraBlack
	x ExtraBold ExtraBlack

To what extent this is compatible with the many possibilities brought 
by AAT and OpenType, I don't know. And probably it's not flexible 
enough, anyway. I think somebody here (or on the OS X TeX list) a 
package for using OT fonts in the standard LaTeX way; how is this dealt 
with there?

Similarly, regarding the font selection I think it would be better to 
avoid defining too many new commands like \cfseries and \textcf, when 
this can be avoided. For different variants of "bold", like semi-bold, 
bold, bold extended, heavy, black, extra-black, ultra-black, I would 
advocate using package options, like you did, for selecting one variant 
as corresponding to the standard \bfseries and \textbf, once and for 
good in a given document; just because people hear about \textbf in the 
various LaTeX manuals around, and I'm afraid they will become 
suspicious and uncomfortable when seeing commands like \textcf.

On the other hand, for truly new combinations like bold italic, I also 
do define at time a new command myself, like \textbi instead of 
\textbf{\textit.

All this may make no sense, I'm not a font specialist. I don't care 
myself about differences between bold and bold extended, for example, 
but I imagine typographers might perhaps want to use both in a given 
document. If so, then please forget the above. And in any case it's 
probably unwise for me to suggest things, given I won't have time to 
contribute to the work itself.

Perhaps a detailed inspection of the different packages available for 
font selection in LaTeX (PSNFSS, PSNFSSX, eco, many more) could give us 
hints on how the core LaTeX people have dealty with this problem. It's 
not I'm all for standards: we're all using Macs, for example, not 
Windows boxes (not to say I wouldn't be pleased at seeing Macs becoming 
the standard, which I hope to see one day ;-)

Just some half-awaken ramblings on the morning of a weekend day,

Bruno Voisin 



More information about the XeTeX mailing list