1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 21:17:45 +00:00

LibPDF: Add initial CFF parsing

The Compat Font Format specification (Adobe's Technical Note #5176) is
used by PDF's Type1C fonts to store their data. While being similar in
spirit to PS1 Type 1 Font Programs, it was designed for a more compact
representation and thus space reduction (but an increment on
complexity). It also shares most of the charstring encoding logic, which
is why the CFF class also inherits from Type1FontProgram.

This initial implementation is still lacking many details, e.g.:

 * It doesn't include all the built-in CFF SIDs
 * It doesn't support CFF-provided SIDs (defaults those glyphs to the
   space character)
 * More checks in general
This commit is contained in:
Rodrigo Tobar 2023-01-18 21:34:48 +08:00 committed by Andreas Kling
parent 1ec4ad5eb6
commit c4b45a82cd
3 changed files with 518 additions and 0 deletions

View file

@ -6,6 +6,7 @@ set(SOURCES
Encoding.cpp
Encryption.cpp
Filter.cpp
Fonts/CFF.cpp
Fonts/PDFFont.cpp
Fonts/PS1FontProgram.cpp
Fonts/TrueTypeFont.cpp