Figures — lnum, onum, tnum, and pnum?

Following up on the Adobe Type 1 discussion...

Most fonts default to Lining figures that display numbers in a uniform height — usually aligned with uppercase letters (baseline and cap height).

Many fonts now contain all the variations — Lining Figures (lnum), Oldstyle Figures (onum), Tabular Figures (tnum), and Proportional Figures (pnum). They all have the same Unicode value, so accessing the variant you want is necessary. This information is embedded in the font file. MS Word, for example, can specify any of these styles within the same document.

Does XPP currently have any setting to call out a specific variation? If not, does XPP have any plans to add this functionality?

We have one font that defaults to Oldstyle figures and this creates all kinds of problems. We had to edit that font to install a version where Lining Figures are now the default... but having access to Tabular Figures (for tables, obviously) would be helpful.

emoji
Parents
  • Hello Chris, 

    To access OpenType characters, I've been doing the following (generalized) three steps.

    Note: these work for me and should not be seen as documentation beyond an approach I've used to work around this limitation. 

    Step 1: Re-point the Unicode address

    Modify the corresponding cmap file(s) to tell XPP which character name to look for in the OTF/TTF file. For tabular figures this might mean changing stuff like the following:

    <0024> /dollar
    <0030> /zero
    <0031> /one
    <0032> /two
    <0033> /three

    To 

    <0024> /dollar.tf
    <0030> /zero.tf
    <0031> /one.tf
    <0032> /two.tf
    <0033> /three.tf

    Step 2: Update the character width

    Update the Character Width in the Phototypesetter spec. For each of the numbers you adjust in the previous step, you will need to tell XPP the width of the character you specified in the cmap.

    For example, if the width of the oldstyle zero was d421 and the tabular version of the zero was d576, you would update the Char Width in the Phototypesetter spec row for x30 with d576. 

    Step 3: Regen the FAST

    After updating both the cmap and the Phototypesetter spec, head over to the FAST Generation area in your font library, right click on the corresponding FAST and select Tools > Generate FAST. 

    Hope this helps.

    - Thomas

    emoji
Reply
  • Hello Chris, 

    To access OpenType characters, I've been doing the following (generalized) three steps.

    Note: these work for me and should not be seen as documentation beyond an approach I've used to work around this limitation. 

    Step 1: Re-point the Unicode address

    Modify the corresponding cmap file(s) to tell XPP which character name to look for in the OTF/TTF file. For tabular figures this might mean changing stuff like the following:

    <0024> /dollar
    <0030> /zero
    <0031> /one
    <0032> /two
    <0033> /three

    To 

    <0024> /dollar.tf
    <0030> /zero.tf
    <0031> /one.tf
    <0032> /two.tf
    <0033> /three.tf

    Step 2: Update the character width

    Update the Character Width in the Phototypesetter spec. For each of the numbers you adjust in the previous step, you will need to tell XPP the width of the character you specified in the cmap.

    For example, if the width of the oldstyle zero was d421 and the tabular version of the zero was d576, you would update the Char Width in the Phototypesetter spec row for x30 with d576. 

    Step 3: Regen the FAST

    After updating both the cmap and the Phototypesetter spec, head over to the FAST Generation area in your font library, right click on the corresponding FAST and select Tools > Generate FAST. 

    Hope this helps.

    - Thomas

    emoji
Children