You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Philip Helger (JIRA)" <ji...@apache.org> on 2015/12/01 11:04:11 UTC

[jira] [Commented] (PDFBOX-2945) PDType1Font.getNameInFont(String) very slow when Unicode fallback is used

    [ https://issues.apache.org/jira/browse/PDFBOX-2945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15033450#comment-15033450 ] 

Philip Helger commented on PDFBOX-2945:
---------------------------------------

No problem - glad I found it :)

> PDType1Font.getNameInFont(String) very slow when Unicode fallback is used
> -------------------------------------------------------------------------
>
>                 Key: PDFBOX-2945
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2945
>             Project: PDFBox
>          Issue Type: Improvement
>          Components: PDModel
>    Affects Versions: 2.0.0
>         Environment: Windows 10, Pdfbox SNAPSHOT as of revision 1697721 from today, Java 1.7.0_76, 64Bit
>            Reporter: Philip Helger
>            Assignee: Tilman Hausherr
>             Fix For: 2.0.0
>
>         Attachments: pdfbox2945.patch
>
>
> When the method is called on a non-embedded font and the unicode fallback is used, the line "String uniName = String.format("uni%04X", unicodes.codePointAt(0));" is called and it is very slow. I suggest either adding a cache (codepoint to uniname) or at least replace the String.format call with something different, as this internally invokes a new RegExp Matcher etc.
> Something like the following might do the trick (maybe you have a better utility classes):
> {code}
>         final StringBuilder aID = new StringBuilder (Integer.toString (unicodes.codePointAt (0), 16).toUpperCase (Locale.US));
>         while (aID.length () < 4)
>              aID.insert (0, '0');
>         aID.insert (0, "uni");
>         final String uniName = aID.toString ();
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org