diff --git a/src/main/java/com/iqser/red/pdftronlogic/commons/InvisibleElementRemovalService.java b/src/main/java/com/iqser/red/pdftronlogic/commons/InvisibleElementRemovalService.java index 9f8a69b..1871838 100644 --- a/src/main/java/com/iqser/red/pdftronlogic/commons/InvisibleElementRemovalService.java +++ b/src/main/java/com/iqser/red/pdftronlogic/commons/InvisibleElementRemovalService.java @@ -89,7 +89,7 @@ public class InvisibleElementRemovalService { * This method is similar to {@link #removeInvisibleElements(InputStream, OutputStream, boolean, boolean)}, just with a PDFDoc. */ @SneakyThrows - public void removeInvisibleElements(PDFDoc pdfDoc, boolean removePaths, boolean delta) { + public void removeInvisibleElements(PDFDoc pdfDoc, boolean delta, boolean removePaths) { execute(pdfDoc, delta, removePaths); } @@ -314,10 +314,13 @@ public class InvisibleElementRemovalService { context.visibleElements().removeAll(currentOverlappedElements); } context.visibleElements().add(ElementFeatureFactory.extractFeatures(pathElement)); - if (!context.delta() || !context.removePaths()) { + if (!context.delta()) { writer.writeElement(pathElement); } + } else if (!context.delta() && !context.removePaths()) { + writer.writeElement(pathElement); } + if (context.delta() && !inClippingPath && context.removePaths()) { pathElement.getGState().setFillColorSpace(ColorSpace.createDeviceRGB()); pathElement.getGState().setFillColor(new ColorPt(1, 0, 0));