FOP-2836: Update PDFBox to 2.0.13

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop-pdf-images/trunk@1849454 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/fontbox-2.0.11.jar b/lib/fontbox-2.0.13.jar
similarity index 92%
rename from lib/fontbox-2.0.11.jar
rename to lib/fontbox-2.0.13.jar
index 8f38ac6..f13a08f 100644
--- a/lib/fontbox-2.0.11.jar
+++ b/lib/fontbox-2.0.13.jar
Binary files differ
diff --git a/lib/pdfbox-2.0.11.jar b/lib/pdfbox-2.0.13.jar
similarity index 77%
rename from lib/pdfbox-2.0.11.jar
rename to lib/pdfbox-2.0.13.jar
index 4195d0e..8bee5ed 100644
--- a/lib/pdfbox-2.0.11.jar
+++ b/lib/pdfbox-2.0.13.jar
Binary files differ
diff --git a/src/java/org/apache/fop/render/pdf/pdfbox/PSPDFGraphics2D.java b/src/java/org/apache/fop/render/pdf/pdfbox/PSPDFGraphics2D.java
index 1d72ea6..ef2f6b2 100644
--- a/src/java/org/apache/fop/render/pdf/pdfbox/PSPDFGraphics2D.java
+++ b/src/java/org/apache/fop/render/pdf/pdfbox/PSPDFGraphics2D.java
@@ -62,6 +62,7 @@
 import org.apache.pdfbox.pdmodel.graphics.shading.AxialShadingPaint;
 import org.apache.pdfbox.pdmodel.graphics.shading.RadialShadingContext;
 import org.apache.pdfbox.pdmodel.graphics.shading.RadialShadingPaint;
+import org.apache.pdfbox.pdmodel.graphics.shading.ShadingPaint;
 import org.apache.pdfbox.util.Matrix;
 
 import org.apache.xmlgraphics.image.loader.ImageInfo;
@@ -120,7 +121,7 @@
                 try {
                     AxialShadingContext asc = (AxialShadingContext) paintContext;
                     float[] fCoords = asc.getCoords();
-                    transformCoords(fCoords, paint, true);
+                    transformCoords(fCoords, (ShadingPaint) paint, true);
                     PDFunction function = asc.getFunction();
                     Function targetFT = getFunction(function);
                     if (targetFT != null) {
@@ -141,7 +142,7 @@
                 try {
                     RadialShadingContext rsc = (RadialShadingContext) paintContext;
                     float[] fCoords = rsc.getCoords();
-                    transformCoords(fCoords, paint, false);
+                    transformCoords(fCoords, (ShadingPaint) paint, false);
                     PDFunction function = rsc.getFunction();
                     Function targetFT3 = getFunction(function);
                     List<Double> dCoords = floatArrayToDoubleList(fCoords);
@@ -196,25 +197,16 @@
         return rectangle;
     }
 
-    private void transformCoords(float[] coords, Paint paint, boolean axialShading) {
-        try {
-            Field f = paint.getClass().getDeclaredField("matrix");
-            f.setAccessible(true);
-            Matrix ctm = (Matrix) f.get(paint);
-            AffineTransform at = ctm.createAffineTransform();
-            if (axialShading) {
-                at.transform(coords, 0, coords, 0, 2);
-            } else {
-                at.transform(coords, 0, coords, 0, 1);
-                at.transform(coords, 3, coords, 3, 1);
-                coords[2] *= ctm.getScalingFactorX();
-                coords[5] *= ctm.getScalingFactorX();
-            }
-
-        } catch (NoSuchFieldException e) {
-            throw new RuntimeException(e);
-        } catch (IllegalAccessException e) {
-            throw new RuntimeException(e);
+    private void transformCoords(float[] coords, ShadingPaint paint, boolean axialShading) {
+        Matrix ctm = paint.getMatrix();
+        AffineTransform at = ctm.createAffineTransform();
+        if (axialShading) {
+            at.transform(coords, 0, coords, 0, 2);
+        } else {
+            at.transform(coords, 0, coords, 0, 1);
+            at.transform(coords, 3, coords, 3, 1);
+            coords[2] *= ctm.getScalingFactorX();
+            coords[5] *= ctm.getScalingFactorX();
         }
     }
 
diff --git a/xmlgraphics-pdfimages-pom-template.pom b/xmlgraphics-pdfimages-pom-template.pom
index b3e8e5b..cf04340 100644
--- a/xmlgraphics-pdfimages-pom-template.pom
+++ b/xmlgraphics-pdfimages-pom-template.pom
@@ -80,12 +80,12 @@
     <dependency>
       <groupId>org.apache.pdfbox</groupId>
       <artifactId>pdfbox</artifactId>
-      <version>2.0.11</version>
+      <version>2.0.13</version>
     </dependency>
     <dependency>
       <groupId>org.apache.pdfbox</groupId>
       <artifactId>fontbox</artifactId>
-      <version>2.0.11</version>
+      <version>2.0.13</version>
     </dependency>
    </dependencies>
 </project>