Uploaded image for project: 'PDFBox'
  1. PDFBox
  2. PDFBOX-4017

Symbol font glyphs not found on Windows 10 fall creators update

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.8
    • 2.0.16, 3.0.0 PDFBox
    • FontBox, Rendering
    • None
    • Windows 10 fall creators update

    Description

      Since the Windows 10 fall creators update all files with the Symbol standard 14 font are no longer rendered properly. Seems to have something to do with a difference in the cmap subtable (all numbers start with F000) and a missing postscript table.

      The font has two cmap subtables. The first one has codes that start with 0, the second one has codes that start with 0xF000. The code names we get from getUniNameOfCodePoint(unicodes.codePointAt(0)) are NOT the low ones, only some match, those that are also in ascii.

      For ">", there are two cmap subtables codes: for "Macintosh, Roman" it is 0x3e, for "Microsoft, Symbol" it is 0xf03e. I tried forcing the first table
      code
      cmap = cmapTable.getSubtable(CmapTable.PLATFORM_MACINTOSH, 0);
      code
      but many codes are missing, e.g. the greek alphabet.

      For "eta" (looks like an "n")
      pdf code 0150 = 0x68
      unicode 0x3b7
      windows code in charmap.exe: 68
      code in subtables: 0x68 and 0xf068

      lozenge
      unicode 0x25ca
      pdf code 0340 = 0xe0
      code in subtables: 0x0e and 0xf0e0

      So it seems one has to bypass this unicode thing and work directly with the symbol encoding...

      Websites:
      https://www.microsoft.com/typography/otspec/cmap.htm#windowsPlatform
      https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6cmap.html

      Attachments

        1. symbol.ttf
          67 kB
          Alexey Zhukov
        2. test.pdf
          200 kB
          Alexey Zhukov

        Issue Links

          Activity

            People

              tilman Tilman Hausherr
              tilman Tilman Hausherr
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: