This is a patch to fix
PDFBOX-1691, I've opened it as its own issue because it's quite a large patch.
The issue it fixes is that the Type 1 "seac" command was not implemented. Seac is a command which draws a composite glyph from two other glyphs. This requires that the Type 1 renderer has access to any of the other rendered glyphs in a CFFFont, which is why this patch is non-trivial. The major change is that the CharStringRenderer has been refactored into a new Type1CharString class and the CharStringConverter has been refactored into a new Type2CharString class. A lot of code has been moved around, but overall this is a conservative patch, as most of the code has not changed significantly.
As well as the patch, there are 3 new files:
and two deleted files: