WatermarkRemover

Inheritance: java.lang.Object

public final class WatermarkRemover

The class intended for manipulation the watermark.

Methods

MethodDescription
paintOver(RasterImage source, WatermarkOptions options)Remove the watermark from the raster image.

Example: The example shows how to remove any object from the image using Graphics Path with Content Aware fill algorithm.

String imageFilePath = "ball.png"; 
try (Image image = Image.load(imageFilePath))
{
    PngImage pngImage = (PngImage)image;

    GraphicsPath mask = new GraphicsPath();
    Figure firstFigure = new Figure();
    firstFigure.addShape(new EllipseShape(new RectangleF(350, 170, 570 - 350, 400 - 170)));
    mask.addFigure(firstFigure);

    ContentAwareFillWatermarkOptions options = new ContentAwareFillWatermarkOptions(mask);
    options.setMaxPaintingAttempts(4);
    try (Image result = WatermarkRemover.paintOver(pngImage, options))
    {
        result.Save(outputPath);
    }
}

Example: The example shows how to remove any object from the image using Graphics Path with Telea algorithm.

String imageFilePath = "ball.png";
String outputPath = "no-watermark.png";
try (Image image = Image.load(imageFilePath))
{
    PngImage pngImage = (PngImage) image;
    GraphicsPath mask = new GraphicsPath();
    Figure firstFigure = new Figure();
    firstFigure.addShape(new EllipseShape(new RectangleF(350, 170, 570 - 350, 400 - 170)));
    mask.addFigure(firstFigure);

    TeleaWatermarkOptions options = new TeleaWatermarkOptions(mask);

    try (RasterImage result = WatermarkRemover.paintOver(pngImage, options))
    {
        result.save(outputPath);
    }
}

paintOver(RasterImage source, WatermarkOptions options)

public static RasterImage paintOver(RasterImage source, WatermarkOptions options)

Remove the watermark from the raster image.

Parameters:

ParameterTypeDescription
sourceRasterImageThe source raster image.
optionsWatermarkOptionsThe watermark options.

Returns: RasterImage - The resulting image.