[
https://issues.apache.org/jira/browse/PDFBOX-2871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14624097#comment-14624097
]
John Hewson commented on PDFBOX-2871:
-------------------------------------
[This
commit|https://issues.apache.org/jira/browse/PDFBOX-2842?focusedCommentId=14624095&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14624095]
from PDFBOX-2842 should solve the problem. I've used the Preferences API to
cache the system font data. The first time that PDFBox is run it will scan and
cache all font data. After that it will load from the cache, unless it detects
new font files. This really helps speed up the command line tools.
> Performance issue when filling the first PDTextField of an AcroForm
> -------------------------------------------------------------------
>
> Key: PDFBOX-2871
> URL: https://issues.apache.org/jira/browse/PDFBOX-2871
> Project: PDFBox
> Issue Type: Bug
> Components: AcroForm
> Affects Versions: 2.0.0
> Reporter: Maruan Sahyoun
> Assignee: Maruan Sahyoun
> Priority: Critical
> Labels: Appearance
> Fix For: 2.0.0
>
> Attachments: PDTextField.pdf, ProfilingOutput.png
>
>
> When filling the first PDTextField in a form the performance is slow. All
> other PDTextFields in the form are handled quickly.
> This code
> {code}
> PDTextField field = (PDTextField)
> doc.getDocumentCatalog().getAcroForm().getField("Textfield01");
> long start = System.nanoTime();
> field.setValue("ABCD");
> long end = System.nanoTime();
> double difference = (end - start)/1e6;
> System.out.println(difference);
> field = (PDTextField)
> doc.getDocumentCatalog().getAcroForm().getField("Textfield02");
> start = System.nanoTime();
> field.setValue("ABCD");
> end = System.nanoTime();
> difference = (end - start)/1e6;
> System.out.println(difference);
> {code}
> produces the following output
> {noformat}
> 9713.38
> 3.904
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]