PDFBox
  1. PDFBox
  2. PDFBOX-619

Adobe CFF/Type2 font encoding enhancements

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.0.0
    • Fix Version/s: 1.1.0
    • Component/s: FontBox
    • Labels:
      None

      Description

      The application of PDFBOX-542 was accompanied with several optimizations. Later testing has revealed that one of the optimizations - the replacement of List-type field org.apache.fontbox.cff.encoding.CFFEncoding#entries with two Map-type fields #code2sid and #sid2code - may come short in situations where the mapping between codes and SIDs is not one-to-one (AFAIK, it is not covered by the CFF specification, but there are real-life examples for that).

      I've compiled a patch file that restores the code in the original state.

      1. FontBox.patch
        8 kB
        Villu Ruusmann

        Issue Links

          Activity

          Hide
          Andreas Lehmkühler added a comment -

          I've applied the patch with version 921450.

          Thanks for the contribution

          Show
          Andreas Lehmkühler added a comment - I've applied the patch with version 921450. Thanks for the contribution
          Hide
          Villu Ruusmann added a comment -

          When testing with finer logging level (debug instead on info), it turned out that class org.apache.pdfbox.pdmodel.font.PDType1CFont was still complaining about not being able to handle some codes. Closer inspection revealed that all the problematic codes were encoded as supplements.

          I have enhanced the patch file to extract mapping information also from supplements.

          Show
          Villu Ruusmann added a comment - When testing with finer logging level (debug instead on info), it turned out that class org.apache.pdfbox.pdmodel.font.PDType1CFont was still complaining about not being able to handle some codes. Closer inspection revealed that all the problematic codes were encoded as supplements. I have enhanced the patch file to extract mapping information also from supplements.

            People

            • Assignee:
              Unassigned
              Reporter:
              Villu Ruusmann
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development