Class ImageUtil


  • public class ImageUtil
    extends Object
    Utility methods for handling images
    Since:
    8.5.3
    Author:
    Marco Meschieri - LogicalDOC
    • Constructor Detail

      • ImageUtil

        public ImageUtil()
    • Method Detail

      • saveImage

        public static void saveImage​(String content,
                                     File file)
                              throws IOException
        Saves an image into a given file in an image format
        Parameters:
        content - the content of the image Base64 encoded
        file - the output file
        Throws:
        IOException - in case of I/O error
      • cropImageToFile

        public static void cropImageToFile​(String content,
                                           ImageZone zone,
                                           File file)
                                    throws IOException
        Crops an area and stores it in a given .jpg file
        Parameters:
        content - the content of the source image Base64 encoded
        zone - the zone definition
        file - the output file
        Throws:
        IOException - an I/O error
      • cropImage

        public static BufferedImage cropImage​(BufferedImage originalImage,
                                              ImageZone zone)
        Crops an area from given image
        Parameters:
        originalImage - the original image
        zone - the zone definition
        Returns:
        the cropped image
      • cropCenterSquare

        public static BufferedImage cropCenterSquare​(BufferedImage originalImage,
                                                     int squareSize)
        Crops a square at the center of the given image
        Parameters:
        originalImage - the original image
        squareSize - size of the square
        Returns:
        the cropped square
      • cropVisibleContent

        public static int[] cropVisibleContent​(File src,
                                               File dst)
                                        throws IOException
        Crops an image leaving the smallest square containing something visible
        Parameters:
        src - the source image file
        dst - the cropped image file (png format)
        Returns:
        width and height of the cropped image
        Throws:
        IOException - In case of elaboration error
      • pasteImage

        public static void pasteImage​(BufferedImage container,
                                      BufferedImage imageIn,
                                      float opaque,
                                      int x,
                                      int y)
        Prints the contents of imageIn on container the given opaque value
        Parameters:
        container - the bigger image
        imageIn - the image to print in
        opaque - and indication of how opaque must be the print
        x - left coordinate
        y - top coordinate
      • printFirstPage

        public static void printFirstPage​(File originalFile,
                                          String originalFileName,
                                          File out)
                                   throws IOException
        Prints the first page of the given file into the output as .jpg image
        Parameters:
        originalFile - the original file
        originalFileName - the original filename
        out - the output .jpg file
        Throws:
        IOException - a generic I/O error
      • isBlack

        public static boolean isBlack​(BufferedImage image,
                                      int x,
                                      int y)
        Whether the pixel is black.
        Parameters:
        image - source image
        x - x coordinate
        y - y coordinate
        Returns:
        true only if the image is black
      • isBlack

        public static boolean isBlack​(BufferedImage image,
                                      int x,
                                      int y,
                                      int luminanceCutOff)
        Whether the pixel is black.
        Parameters:
        image - source image
        x - x coordinate
        y - y coordinate
        luminanceCutOff - cut off luminance
        Returns:
        true only if the image is black
      • rotate

        public static BufferedImage rotate​(BufferedImage image,
                                           double angle,
                                           int cx,
                                           int cy)
        Rotates image.
        Parameters:
        image - source image
        angle - by degrees
        cx - x-coordinate of pivot point
        cy - y-coordinate of pivot point
        Returns:
        rotated image
      • getScaledInstance

        public static BufferedImage getScaledInstance​(BufferedImage image,
                                                      int targetWidth,
                                                      int targetHeight)
        Convenience method that returns a scaled instance of the provided BufferedImage.
        Parameters:
        image - the original image to be scaled
        targetWidth - the desired width of the scaled instance, in pixels
        targetHeight - the desired height of the scaled instance, in pixels
        Returns:
        a scaled version of the original BufferedImage
      • getScaledInstance

        public static IIOImage getScaledInstance​(IIOImage iioSource,
                                                 float scale)
        Convenience method that returns a scaled instance of the provided IIOImage.
        Parameters:
        iioSource - the original image to be scaled
        scale - the desired scale
        Returns:
        a scaled version of the original IIOImage
      • getSubImage

        public static BufferedImage getSubImage​(BufferedImage image,
                                                int x,
                                                int y,
                                                int width,
                                                int height)
        A replacement for the standard BufferedImage.getSubimage method.
        Parameters:
        image - the image to take the sub area from
        x - the X coordinate of the upper-left corner of the specified rectangular region
        y - the Y coordinate of the upper-left corner of the specified rectangular region
        width - the width of the specified rectangular region
        height - the height of the specified rectangular region
        Returns:
        a BufferedImage that is the subimage of image.
      • convertImageToBinary

        public static BufferedImage convertImageToBinary​(BufferedImage image)
        A simple method to convert an image to binary or B/W image.
        Parameters:
        image - input image
        Returns:
        a monochrome image
      • convertImageToGrayscale

        public static BufferedImage convertImageToGrayscale​(BufferedImage image)
        A simple method to convert an image to gray scale.
        Parameters:
        image - input image
        Returns:
        a monochrome image
      • invertImageColor

        public static BufferedImage invertImageColor​(BufferedImage image)
        Inverts image color.
        Parameters:
        image - input image
        Returns:
        an inverted-color image
      • rotateImage

        public static BufferedImage rotateImage​(BufferedImage image,
                                                double angle)
        Rotates an image.
        Parameters:
        image - the original image
        angle - the degree of rotation
        Returns:
        a rotated image
      • getClipboardImage

        public static Image getClipboardImage()
        Gets an image from Clipboard.
        Returns:
        image the image to process
      • cloneImage

        public static BufferedImage cloneImage​(BufferedImage bi)
        Clones an image.
        Parameters:
        bi - the image to clone
        Returns:
        the cloned image
      • textToImage

        public static BufferedImage textToImage​(String text)
        Creates an images with the givent text printed inside
        Parameters:
        text - the text to print in the image
        Returns:
        The generated image