diff options
author | Andreas Beeker <kiwiwings@apache.org> | 2018-12-18 22:52:36 +0000 |
---|---|---|
committer | Andreas Beeker <kiwiwings@apache.org> | 2018-12-18 22:52:36 +0000 |
commit | 9eea29da5b7d6e1a2dcb915e0e7272a3f04ec28e (patch) | |
tree | 1794327904da4b5b7f92ff61a2b0b26356f1351c /src/java/org | |
parent | 2dea9797ce711807ea58d4bfb3276e91567f6cb6 (diff) | |
download | poi-9eea29da5b7d6e1a2dcb915e0e7272a3f04ec28e.tar.gz poi-9eea29da5b7d6e1a2dcb915e0e7272a3f04ec28e.zip |
#63017 - Remove rows from a XSLFTable
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1849244 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org')
-rw-r--r-- | src/java/org/apache/poi/sl/draw/DrawPaint.java | 10 | ||||
-rw-r--r-- | src/java/org/apache/poi/sl/draw/DrawShape.java | 8 | ||||
-rw-r--r-- | src/java/org/apache/poi/sl/draw/DrawSimpleShape.java | 4 |
3 files changed, 14 insertions, 8 deletions
diff --git a/src/java/org/apache/poi/sl/draw/DrawPaint.java b/src/java/org/apache/poi/sl/draw/DrawPaint.java index 80c5bcb00b..4fda618d0e 100644 --- a/src/java/org/apache/poi/sl/draw/DrawPaint.java +++ b/src/java/org/apache/poi/sl/draw/DrawPaint.java @@ -143,7 +143,7 @@ public class DrawPaint { public Paint getPaint(Graphics2D graphics, PaintStyle paint, PaintModifier modifier) { if (modifier == PaintModifier.NONE) { - return null; + return TRANSPARENT; } if (paint instanceof SolidPaint) { return getSolidPaint((SolidPaint)paint, graphics, modifier); @@ -152,7 +152,7 @@ public class DrawPaint { } else if (paint instanceof TexturePaint) { return getTexturePaint((TexturePaint)paint, graphics); } - return null; + return TRANSPARENT; } @SuppressWarnings({"WeakerAccess", "unused"}) @@ -236,7 +236,7 @@ public class DrawPaint { protected Paint getTexturePaint(TexturePaint fill, Graphics2D graphics) { InputStream is = fill.getImageData(); if (is == null) { - return null; + return TRANSPARENT; } assert(graphics != null); @@ -250,7 +250,7 @@ public class DrawPaint { } } catch (IOException e) { LOG.log(POILogger.ERROR, "Can't load image data - using transparent color", e); - return null; + return TRANSPARENT; } int alpha = fill.getAlpha(); @@ -270,7 +270,7 @@ public class DrawPaint { if(image == null) { LOG.log(POILogger.ERROR, "Can't load image data"); - return null; + return TRANSPARENT; } return new java.awt.TexturePaint(image, textAnchor); diff --git a/src/java/org/apache/poi/sl/draw/DrawShape.java b/src/java/org/apache/poi/sl/draw/DrawShape.java index df5960b538..0c6054c8a9 100644 --- a/src/java/org/apache/poi/sl/draw/DrawShape.java +++ b/src/java/org/apache/poi/sl/draw/DrawShape.java @@ -121,7 +121,10 @@ public class DrawShape implements Drawable { } public static Rectangle2D getAnchor(Graphics2D graphics, PlaceableShape<?,?> shape) { -// return getAnchor(graphics, shape.getAnchor()); + final Rectangle2D shapeAnchor = shape.getAnchor(); + if (shapeAnchor == null) { + return null; + } final boolean isHSLF = isHSLF(shape); AffineTransform tx = graphics == null ? null : (AffineTransform)graphics.getRenderingHint(Drawable.GROUP_TRANSFORM); @@ -146,7 +149,6 @@ public class DrawShape implements Drawable { // and later on, turn it around again to compare it with its original size ... - final Rectangle2D shapeAnchor = shape.getAnchor(); final Rectangle2D anchorO = tx.createTransformedShape(shapeAnchor).getBounds2D(); final Rectangle2D anchorT; @@ -190,7 +192,7 @@ public class DrawShape implements Drawable { normalizedShape = txs2.createTransformedShape(shapeAnchor).getBounds2D(); } } else { - normalizedShape = shape.getAnchor(); + normalizedShape = shapeAnchor; } if (tx.isIdentity()) { diff --git a/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java b/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java index a8d6fb534e..eacc6ed806 100644 --- a/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java +++ b/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java @@ -69,6 +69,10 @@ public class DrawSimpleShape extends DrawShape { @Override public void draw(Graphics2D graphics) { + if (getAnchor(graphics, getShape()) == null) { + return; + } + DrawPaint drawPaint = DrawFactory.getInstance(graphics).getPaint(getShape()); Paint fill = drawPaint.getPaint(graphics, getShape().getFillStyle().getPaint()); Paint line = drawPaint.getPaint(graphics, getShape().getStrokeStyle().getPaint()); |