You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2021/03/21 05:36:32 UTC
svn commit: r1887888 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java
Author: tilman
Date: Sun Mar 21 05:36:32 2021
New Revision: 1887888
URL: http://svn.apache.org/viewvc?rev=1887888&view=rev
Log:
PDFBOX-4892: improve performance, as suggested by valerybokov
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java?rev=1887888&r1=1887887&r2=1887888&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java Sun Mar 21 05:36:32 2021
@@ -140,24 +140,30 @@ class AppearanceGeneratorHelper
for (PDAnnotationWidget widget : field.getWidgets())
{
- if (widget.getNormalAppearanceStream() != null && widget.getNormalAppearanceStream().getResources() != null)
+ PDAppearanceStream stream = widget.getNormalAppearanceStream();
+ if (stream == null)
{
- PDResources widgetResources = widget.getNormalAppearanceStream().getResources();
- for (COSName fontResourceName : widgetResources.getFontNames())
+ continue;
+ }
+ PDResources widgetResources = stream.getResources();
+ if (widgetResources == null)
+ {
+ continue;
+ }
+ for (COSName fontResourceName : widgetResources.getFontNames())
+ {
+ try
{
- try
+ if (acroFormResources.getFont(fontResourceName) == null)
{
- if (acroFormResources.getFont(fontResourceName) == null)
- {
- LOG.debug("Adding font resource " + fontResourceName + " from widget to AcroForm");
- acroFormResources.put(fontResourceName, widgetResources.getFont(fontResourceName));
- }
- }
- catch (IOException e)
- {
- LOG.warn("Unable to match field level font with AcroForm font", e);
+ LOG.debug("Adding font resource " + fontResourceName + " from widget to AcroForm");
+ acroFormResources.put(fontResourceName, widgetResources.getFont(fontResourceName));
}
}
+ catch (IOException e)
+ {
+ LOG.warn("Unable to match field level font with AcroForm font", e);
+ }
}
}
}