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

Roberto Nibali commented on PDFBOX-2871:
----------------------------------------

I'm running SVN head since a couple of days already, as most of the recent 
changes had been triggered by my moaning to the pdfbox users mailing list. On 
my MacOSX test laptop, I have 388 fonts in the referenced directories and the 
search + font parsing takes between 8 and 10 seconds. I'm willing to have a 
look at it, since I've seen quite a few places with potential speed 
improvements. I have no idea, why it is so slow on my MacOSX. Today, I had the 
chance to quickly run the code on a Windows 7 client system, and it also only 
took roughly 4-5 seconds to scan the system; after that the cache hits 
massively reduce the time, so it's not an issue for production. However during 
development it's killing me ;). 

> 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]

Reply via email to