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 2019/08/02 18:33:25 UTC

svn commit: r1864278 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.java

Author: tilman
Date: Fri Aug  2 18:33:25 2019
New Revision: 1864278

URL: http://svn.apache.org/viewvc?rev=1864278&view=rev
Log:
PDFBOX-4071: simplify code

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.java?rev=1864278&r1=1864277&r2=1864278&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.java Fri Aug  2 18:33:25 2019
@@ -291,22 +291,21 @@ public final class PDAcroForm implements
         {
             refreshAppearances(fields);
         }
-        
-        // indicates if the original content stream
-        // has been wrapped in a q...Q pair.
-        boolean isContentStreamWrapped;
-        
+
         // the content stream to write to
         PDPageContentStream contentStream;
-        
+
         Map<COSDictionary,Map<COSDictionary,PDAnnotationWidget>> pagesWidgetsMap = buildPagesWidgetsMap(fields);
         
         // preserve all non widget annotations
         for (PDPage page : document.getPages())
         {
-            Map<COSDictionary,PDAnnotationWidget> widgetsForPageMap = pagesWidgetsMap.get(page.getCOSObject());
-            isContentStreamWrapped = false;
-            
+            Map<COSDictionary, PDAnnotationWidget> widgetsForPageMap = pagesWidgetsMap.get(page.getCOSObject());
+
+            // indicates if the original content stream
+            // has been wrapped in a q...Q pair.
+            boolean isContentStreamWrapped = false;
+
             List<PDAnnotation> annotations = new ArrayList<>();
                        
             for (PDAnnotation annotation: page.getAnnotations())
@@ -317,16 +316,9 @@ public final class PDAcroForm implements
                 }
                 else if (!annotation.isInvisible() && !annotation.isHidden() && annotation.getNormalAppearanceStream() != null)
                 {
-                    if (!isContentStreamWrapped)
-                    {
-                        contentStream = new PDPageContentStream(document, page, AppendMode.APPEND, true, true);
-                        isContentStreamWrapped = true;
-                    }
-                    else
-                    {
-                        contentStream = new PDPageContentStream(document, page, AppendMode.APPEND, true);
-                    }
-                    
+                    contentStream = new PDPageContentStream(document, page, AppendMode.APPEND, true, !isContentStreamWrapped);
+                    isContentStreamWrapped = true;
+
                     PDAppearanceStream appearanceStream = annotation.getNormalAppearanceStream();
                     
                     PDFormXObject fieldObject = new PDFormXObject(appearanceStream.getCOSObject());