[ 
https://issues.apache.org/jira/browse/PDFBOX-1844?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Hewson updated PDFBOX-1844:
--------------------------------

    Attachment:     (was: type1-v2.patch)

> [PATCH] Parser for Type 1 Fonts
> -------------------------------
>
>                 Key: PDFBOX-1844
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-1844
>             Project: PDFBox
>          Issue Type: Improvement
>          Components: FontBox
>    Affects Versions: 2.0.0
>            Reporter: John Hewson
>            Assignee: Andreas Lehmkühler
>              Labels: patch, rendering
>         Attachments: CustomEncoding.java, Token.java, 
> Type1CharStringReader.java, Type1Font.java, Type1Glyph2D.java, 
> Type1Mapping.java, latexdemo.pdf, redp4581.pdf, test.pdf
>
>
> This patch adds a parser for Type 1 fonts to FontBox and makes use of it in 
> PDFBox for rendering Type 1 glyphs. This should fix various issues with the 
> JVM crashing and rendering fonts incorrectly.
> It was necessary to modify Type1CharStringParser to handle the 
> `callothersubr` command and correctly handle subroutines. Likewise, 
> Type1CharString was modified to support "flex".
> This patch does not remove the AWT fallback for non-embedded and standard 14 
> fonts because an entirely new fallback system is needed and suitable fonts 
> will need to be shipped as part of PDFBox. This needs to be discussed on the 
> mailing list and/or in follow-on issue.
> Note: To keep this patch small I have not replaced any of the existing ad-hoc 
> Type 1 parsing code in PDType1Font and preflight. Those classes retain their 
> original code which can be replaced in subsequent patches/refactoring. I can 
> open follow-on issues for these.
> ~~~
> As well as the patch, the these files were added:
> + /pdfbox/src/main/java/org/apache/pdfbox/pdfviewer/font/Type1Glyph2D.java
> + /fontbox/src/main/java/org/apache/fontbox/encoding/CustomEncoding.java
> + /fontbox/src/main/java/org/apache/fontbox/type1/Token.java
> + /fontbox/src/main/java/org/apache/fontbox/type1/Type1CharStringReader.java
> + /fontbox/src/main/java/org/apache/fontbox/type1/Type1Font.java
> + /fontbox/src/main/java/org/apache/fontbox/type1/Type1Lexer.java
> + /fontbox/src/main/java/org/apache/fontbox/type1/Type1Mapping.java
> + /fontbox/src/main/java/org/apache/fontbox/type1/Type1Parser.java
> And this file was removed:
> - /pdfbox/src/main/java/org/apache/pdfbox/pdfviewer/font/CFFGlyph2D.java



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to