[XeTeX] Fake old-style figures & small-caps with XeTeX?

cfrees at imapmail.org cfrees at imapmail.org
Wed Jul 28 15:31:56 CEST 2010

On Wed 28th Jul, 2010 at 03:00, Ernest Adrogué seems to have written:

> 27/07/10 @ 20:47 (+0100), thus spake cfrees at imapmail.org:
>> On Tue 27th Jul, 2010 at 09:48, Khaled Hosny seems to have written:
>>> On Tue, Jul 27, 2010 at 02:36:45AM +0200, Ernest Adrogué wrote:
>>>> 23/07/10 @ 17:12 (+0200), thus spake enrico.gregorio at univr.it:
>>>>>> Hi!
>>>>>> Is it possible to generate fake old-style figures & small
>>>>>> capitals for fonts missing these glyphs with XeTeX.
>>>>>> I used to use the mathpoz package that does exactly that,
>>>>>> but something tells me it's not compatible with XeTeX.
>>>>> I guess it's the "mathpazo" package, for Palatino. You can
>>>>> substitute the text font with the TeX Gyre version:
>>>>> \usepackage{mathpazo}
>>>>> \setmainfont[Numbers=OldStyle]{TeX Gyre Pagella}
>>>>> With declarations in this order, XeLaTeX should be happy: and indeed it is,
>>>>> I've tried compiling the documentation of amsmath and all goes well.
>>>> I'll have to study this in more detail.
>>>> I thought that "mathpazo" generated the small-caps and old-style
>>>> figures by itself, but it seems that it doesn't.
>>> Though there are some DTP and office applications that fake small caps,
>>> I've never seen one that fakes oldstyle figure, I don't think it is even
>>> possible.
>>>>                                         It simply selects
>>>> another font wich is URW Palladio with real small-caps and old-style
>>>> figures added. I don't know what's the point in having a version of
>>>> URW Palladio without small-caps and another one with, all in the
>>>> same LaTeX installation.
>>> Traditional TeX engines can only use small caps if they are in a separate
>>> font.
>> Just to clarify, this, you need separate TFM files, but it is perfectly
>> OK for the small caps to be in the same font in the sense of being in
>> the same pfb (or ttf for pdflatex which is not quite traditional, of
>> course). This amounts to having them in separate fonts as far as TeX is
>> concerned but the actual glyphs can all be in the same type 1 font.

My comment here concerned the way traditional TeX engines work - not
XeTeX. (Though I believe XeTeX sometimes falls back to a similar system
but only as a last resort. Not sure, though.)

> Right now, I have two fonts with old-style numbers.
> One, Linux Libertine, a true-type font.
> Two, PFL Neu, a type 1 font based on URW Palladio.
> These both have old-style figures in the same file, and I have seen
> with Font Forge that the glyphs are labeled the same: zero.oldstyle,
> one.oldstyle... etc.
> However, I cannot use the old-style figures from the type1 font.
> It prints a warning saying that the OpenType feature 'Numbers=OldStyle'
> is not available.
> Why can't XeTeX find the o.s. numbers? Is it a limitation of type 1
> fonts?

Yes. Type 1 fonts do not have OpenType features. They are a feature of
OpenType fonts.

> If I put the old-style glyphs in a different file, and load the font
> with the SmallCapsFont=<file> option, then it still prints the warning
> about old-style numbers not available, but you can actually get o.s.
> figures selecting small-caps, e.g. \textsc{12345}. Whereas \textup{123}
> uses normal figures. It's not ideal, but it works. The problem is that
> it's inconsistent, because the true-type font is insensitive to
> \textsc \textup as long as o.s. figures are concerned, it only  obeys
> the OpenType feature "Numbers" option.

Hopefully somebody else will answer this!

- cfr

> Any comment appreciated :)
> Cheers.
> Ernest
> --------------------------------------------------
> Subscriptions, Archive, and List information, etc.:
>  http://tug.org/mailman/listinfo/xetex

More information about the XeTeX mailing list