[
https://issues.apache.org/jira/browse/PDFBOX-2871?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14626837#comment-14626837
]
John Hewson edited comment on PDFBOX-2871 at 7/14/15 6:41 PM:
--------------------------------------------------------------
I'm not really worried about speeding up font parsing, we have the on-disk
cache now, so it's an "only once ever" event. Scanning for files on the local
system is already fast. What's still relatively slow about the new cache is
that it uses Java's serialization - a custom serialisation format could be much
faster. I'm also not sure about the speed of the Preferences API - benchmarking
needed.
was (Author: jahewson):
I'm not really worried about speeding up font parsing, we have the on-disk
cache now, so it's a "only once ever" event. Scanning for files on the local
system is already fast. What's still relatively slow about the new cache is
that it uses Java's serialization - a custom serialisation format could be much
faster. I'm also not sure about the speed of the Preferences API - benchmarking
needed.
> 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: John Hewson
> 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]