#16 cmap 2 problems with mingli.ttf

closed-fixed
TrueType (18)
5
2008-02-29
2003-09-22
Werner LEMBERG
No

. Testing with font mingli.ttf (version 1.00 from 1992)
there is a bug.
ttx returns the following ranges in the (1,2) cmap
format 2:

...
<map code="0x7e" name="glyph00127"/>
<map code="0x7f" name="glyph00128"/>
<map code="0x8000" name=".notdef"/>
<map code="0x8100" name=".notdef"/>
<map code="0x8200" name=".notdef"/>
<map code="0x8300" name=".notdef"/>
...
<map code="0x9e00" name=".notdef"/>
<map code="0x9f00" name=".notdef"/>
<map code="0xa000" name=".notdef"/>
<map code="0xa140" name="glyph00659"/>
<map code="0xa141" name="glyph00660"/>
<map code="0xa142" name="glyph00661"/>
...

Note the single character codes 0x8000, 0x8100, ...,
0xa000: They
are incorrect and shouldn't be here at all. All
those single
character codes use the same format 2 subHeader:

0x0040
0x0000
0x0000
0x0000

this is, firstCode is 0x40 but entryCount is zero.
ttx incorrectly
reports a single valid character code.

Discussion

  • Logged In: NO

    rroberts@adobe.com
    I agree that it is visual noise to have notderf mappings present, so I
    rewrote the code to not need to emit the notdef mappings anymore.

    The mingli.ttf font was a very useful test case. Sice it was built by
    tools other than those used for the fonts I usually see, examining it
    revealed bugs in both my cmap format 2 implementation, the existing
    format 4 implementation, and in the Adobe FDK spot/otfproof tool for
    both these formats.

    The fixes are in source code that I have submitted to Just von Rossum

     
    • assigned_to: nobody --> jvr
     
  • Logged In: YES
    user_id=92689

    Werner, I'm not sure of the status of the edits Read talks about
    here, can you see whether the problem still exists in CVS?

     
  • Logged In: YES
    user_id=92689
    Originator: NO

    This appears to have been fixed for a while.

     
    • status: open --> closed-fixed