You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Villu Ruusmann (JIRA)" <ji...@apache.org> on 2009/12/07 16:59:18 UTC

[jira] Updated: (PDFBOX-542) Support for Adobe CFF/Type2 fonts

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

Villu Ruusmann updated PDFBOX-542:
----------------------------------

    Attachment:     (was: pdfbox-r823839.patch)

> Support for Adobe CFF/Type2 fonts
> ---------------------------------
>
>                 Key: PDFBOX-542
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-542
>             Project: PDFBox
>          Issue Type: New Feature
>          Components: FontBox, PDModel
>    Affects Versions: 0.8.0-incubator
>            Reporter: Villu Ruusmann
>            Assignee: Andreas Lehmkühler
>         Attachments: fontbox-r818793.patch, with-cff.png, without-cff.png
>
>
> PDFBox should support embedded font types, most prominently the Adobe CFF/Type2 (aka Type1C) font type. The desired functionality includes both glyph metrics (for PDF text extraction using org.apache.pdfbox.util.PDFTextStripper) and glyph painting (for PDF rendering using org.apache.pdfbox.pdfviewer.PageDrawer).
> I have implemented the basics of Adobe CFF/Type2 font specification. If the other project members find my work substantial, I would like to see it incorporated into FontBox/PDFBox projects. Please see the attached patch files.
> Design considerations. A PDF FontFile3 stream can be parsed into CFFFont objects by class CFFParser. CFFFont contains a map of glyph names to Type2 charstrings, which can be converted to Type1 charstrings by class CharStringConverter and rendered by class CharStringRenderer. Glyph metrics is attained by formatting the result as AFM by class AFMFormatter, which plugs nicely with existing PDFBox infrastructure. Glyph painting is attained by formatting the result as PostScript Type1 font by class Type1FontFormatter, which can be loaded via java.awt.Font#createFont(int, InputStream).
> The current implementation does not support synthetic CFF fonts nor CID-keyed CFF fonts. Also, the conversion of certain Type2 features (stemming, hinting, flex) is missing.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.