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/04/18 09:49:21 UTC

svn commit: r1888889 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/PageDrawer.java

Author: tilman
Date: Sun Apr 18 09:49:21 2021
New Revision: 1888889

URL: http://svn.apache.org/viewvc?rev=1888889&view=rev
Log:
PDFBOX-5168: refactor

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/PageDrawer.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/PageDrawer.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/PageDrawer.java?rev=1888889&r1=1888888&r2=1888889&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/PageDrawer.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/rendering/PageDrawer.java Sun Apr 18 09:49:21 2021
@@ -681,21 +681,9 @@ public class PageDrawer extends PDFGraph
         // PDFBOX-5168: show an all-zero dash array line invisible like Adobe does
         // must do it here because getDashArray() sets minimum width because of JVM bugs
         float[] dashArray = dashPattern.getDashArray();
-        if (dashArray.length > 0)
+        if (isAllZeroDash(dashArray))
         {
-            boolean allZero = true;
-            for (int i = 0; i < dashArray.length; ++i)
-            {
-                if (dashArray[i] != 0)
-                {
-                    allZero = false;
-                    break;
-                }
-            }
-            if (allZero)
-            {
-                return (Shape p) -> new Area();
-            }
+            return (Shape p) -> new Area();
         }
         float phaseStart = dashPattern.getPhase();
         dashArray = getDashArray(dashPattern);
@@ -729,6 +717,27 @@ public class PageDrawer extends PDFGraph
                                miterLimit, dashArray, phaseStart);
     }
 
+    private boolean isAllZeroDash(float[] dashArray)
+    {
+        if (dashArray.length > 0)
+        {
+            boolean allZero = true;
+            for (int i = 0; i < dashArray.length; ++i)
+            {
+                if (dashArray[i] != 0)
+                {
+                    allZero = false;
+                    break;
+                }
+            }
+            if (allZero)
+            {
+                return true;
+            }
+        }
+        return false;
+    }
+
     private float[] getDashArray(PDLineDashPattern dashPattern)
     {
         float[] dashArray = dashPattern.getDashArray();