[
https://issues.apache.org/jira/browse/PDFBOX-2467?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
John Hewson reassigned PDFBOX-2467:
-----------------------------------
Assignee: John Hewson
> Remove substitute logic from ExternalFonts
> ------------------------------------------
>
> Key: PDFBOX-2467
> URL: https://issues.apache.org/jira/browse/PDFBOX-2467
> Project: PDFBox
> Issue Type: Improvement
> Affects Versions: 2.0.0
> Reporter: Cornelis Hoeflake
> Assignee: John Hewson
> Fix For: 2.0.0
>
> Attachments: patch1.diff, patch2.diff
>
>
> The ExternalFonts class does some substitute logic for fonts. There is a
> static map which holds the substitutes and is loaded in the ExternalClass
> file and some substitutes are got from Standards14.
> Next that map also contains some substitutes for registry fonts (I don't know
> what it is), but it feels a bit like misusing the substitutes mechanism (with
> prepending a $ to omit conflicts).
> As user of PDFBox I want to have the control over substitutes. For example
> when a PDF has font TrueType Arial,Bold (windows style), and my font provider
> has only a Type1 font for Arial Bold, the current mechanism returns the
> Helvetica Bold font True Type font (if have one in my fontprovider).
> So I wrote a patch which allows you to wrap a fontprovider in a
> SubstituteFontProvider. That SubstituteFontProvider does the substitute logic
> like ExternalFonts did before. The user is in control to wrap (or let
> ExternalFonts wrap) his own fontprovider in the SubstituteFontProvider.
> The registry fonts issue is kept in ExternalFonts and uses an own map.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)