Class ImageUtils


  • public class ImageUtils
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      ImageUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.awt.image.BufferedImage addBorder​(java.awt.image.BufferedImage image, java.awt.Color borderColor, int borderWidth, int cornerRadius)  
      static java.awt.image.BufferedImage base64Decode​(java.io.File file)  
      static java.awt.image.BufferedImage base64Decode​(java.lang.String encoded)  
      static java.lang.String base64Encode​(byte[] imageBytes)  
      static java.lang.String base64Encode​(java.awt.image.BufferedImage image)  
      static java.lang.String base64Encode​(java.io.File file)  
      static java.awt.image.BufferedImage createCheckeredBackground​(java.awt.image.BufferedImage image, int checkerSize, java.awt.Color checkeredColor1, java.awt.Color checkeredColor2)  
      static java.awt.image.BufferedImage cropImage​(java.awt.image.BufferedImage image, int trimLeft, int trimRight, int trimTop, int trimBottom)  
      static @Nullable java.lang.String decodeKroki​(java.lang.String url)  
      static java.awt.image.BufferedImage drawHighlightOval​(java.awt.image.BufferedImage image, int x, int y, int w, int h, java.awt.Color borderColor, int borderWidth, java.awt.Color innerFillColor)  
      static java.awt.image.BufferedImage drawHighlightRectangle​(java.awt.image.BufferedImage image, int x, int y, int w, int h, java.awt.Color borderColor, int borderWidth, int cornerRadius, java.awt.Color innerFillColor)  
      static java.awt.image.BufferedImage drawOval​(java.awt.image.BufferedImage image, int x, int y, int w, int h, java.awt.Color borderColor, int borderWidth, float[] dash, float dashPhase)  
      static java.awt.image.BufferedImage drawRectangle​(java.awt.image.BufferedImage image, int x, int y, int w, int h, java.awt.Color borderColor, int borderWidth, int cornerRadius)  
      static java.awt.image.BufferedImage drawRectangle​(java.awt.image.BufferedImage image, int x, int y, int w, int h, java.awt.Color borderColor, int borderWidth, int cornerRadius, float[] dash, float dashPhase)  
      static @Nullable java.lang.String encodeKroki​(java.lang.String text)  
      static byte[] getImageBytes​(java.awt.image.BufferedImage image)  
      static java.awt.Image getImageFromClipboard()  
      static java.awt.Image getImageFromTransferable​(java.awt.datatransfer.Transferable transferable)  
      static boolean isEncodedImage​(java.lang.String encoded)  
      static boolean isPossiblyEncodedImage​(java.lang.String encoded)  
      static java.awt.image.BufferedImage loadImageFromFile​(java.io.File cachedImageFile)  
      static java.awt.image.BufferedImage loadImageFromURL​(java.lang.String imageURL)  
      static java.awt.image.BufferedImage loadImageFromURL​(java.lang.String imageURL, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromFile​(java.io.File imageFile)  
      static java.awt.image.BufferedImage loadSvgImageFromFile​(java.io.File imageFile, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromStream​(@NotNull java.io.InputStream svgInputStream, float scale, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromStream​(@NotNull java.io.InputStream svgInputStream, float sizeX, float sizeY, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromStream​(@NotNull java.io.InputStream svgInputStream, @Nullable java.awt.Point size, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromStream​(java.io.InputStream svgInputStream, @Nullable java.lang.Float sizeX, @Nullable java.lang.Float sizeY, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull java.lang.String imageURL)  
      static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull java.lang.String imageURL, float scale)  
      static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull java.lang.String imageURL, float scale, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull java.lang.String imageURL, @Nullable java.awt.Point size, boolean logImageProcessing)  
      static java.awt.image.BufferedImage loadSvgImageFromURLSized​(@NotNull java.lang.String imageURL, float sizeX, float sizeY, boolean logImageProcessing)  
      static java.awt.image.BufferedImage makeRoundedCorner​(java.awt.image.BufferedImage image, int cornerRadius, int borderWidth)
      http://stackoverflow.com/questions/7603400/how-to-make-a-rounded-corner-image-in-java
      static java.awt.image.BufferedImage overlayImage​(java.awt.image.BufferedImage imageBack, java.awt.Image imageFore, int x, int y)  
      static java.awt.image.BufferedImage punchOuterHighlightOval​(java.awt.image.BufferedImage image, java.awt.image.BufferedImage outerImage, int x, int y, int w, int h, int borderWidth, java.awt.Color outerFillColor, int outerBorderWidth, int outerCornerRadius, boolean applyToImage)  
      static java.awt.image.BufferedImage punchOuterHighlightRectangle​(java.awt.image.BufferedImage image, java.awt.image.BufferedImage outerImage, int x, int y, int w, int h, int borderWidth, int cornerRadius, java.awt.Color outerFillColor, int outerBorderWidth, int outerCornerRadius, boolean applyToImage)  
      static java.awt.image.BufferedImage removeAlpha​(java.awt.image.BufferedImage image)  
      static java.awt.image.BufferedImage rotateImage​(java.awt.image.BufferedImage image, int rotation)  
      static void save​(java.awt.image.BufferedImage image, java.io.File file, java.lang.String format)  
      static java.awt.image.BufferedImage scaleImage​(java.awt.image.BufferedImage sourceImage, int newWidth, int newHeight, int opType)  
      static java.awt.image.BufferedImage toBufferedImage​(java.awt.Image src)  
      static java.awt.image.BufferedImage toTransparent​(java.awt.image.BufferedImage image, java.awt.Color color, int tolerance)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • PNG_BASE_64_PREFIX

        public static final java.lang.String PNG_BASE_64_PREFIX
        See Also:
        Constant Field Values
      • TRANSPARENT

        public static java.awt.Color TRANSPARENT
    • Constructor Detail

      • ImageUtils

        public ImageUtils()
    • Method Detail

      • getImageFromClipboard

        public static java.awt.Image getImageFromClipboard()
      • getImageFromTransferable

        public static java.awt.Image getImageFromTransferable​(java.awt.datatransfer.Transferable transferable)
      • scaleImage

        public static java.awt.image.BufferedImage scaleImage​(java.awt.image.BufferedImage sourceImage,
                                                              int newWidth,
                                                              int newHeight,
                                                              int opType)
      • toBufferedImage

        public static java.awt.image.BufferedImage toBufferedImage​(java.awt.Image src)
      • save

        public static void save​(java.awt.image.BufferedImage image,
                                java.io.File file,
                                java.lang.String format)
      • loadImageFromFile

        public static java.awt.image.BufferedImage loadImageFromFile​(java.io.File cachedImageFile)
        Parameters:
        cachedImageFile - file
        Returns:
        Could be null if the image could not be read from the file (because of whatever strange reason).
      • base64Encode

        public static java.lang.String base64Encode​(java.awt.image.BufferedImage image)
      • base64Encode

        public static java.lang.String base64Encode​(byte[] imageBytes)
      • base64Encode

        public static java.lang.String base64Encode​(java.io.File file)
      • base64Decode

        public static java.awt.image.BufferedImage base64Decode​(java.io.File file)
      • isEncodedImage

        public static boolean isEncodedImage​(java.lang.String encoded)
      • isPossiblyEncodedImage

        public static boolean isPossiblyEncodedImage​(java.lang.String encoded)
      • base64Decode

        public static java.awt.image.BufferedImage base64Decode​(java.lang.String encoded)
      • loadSvgImageFromURL

        public static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull
                                                                       @NotNull java.lang.String imageURL)
      • loadSvgImageFromURL

        public static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull
                                                                       @NotNull java.lang.String imageURL,
                                                                       float scale)
      • loadSvgImageFromURL

        public static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull
                                                                       @NotNull java.lang.String imageURL,
                                                                       float scale,
                                                                       boolean logImageProcessing)
      • loadSvgImageFromURLSized

        public static java.awt.image.BufferedImage loadSvgImageFromURLSized​(@NotNull
                                                                            @NotNull java.lang.String imageURL,
                                                                            float sizeX,
                                                                            float sizeY,
                                                                            boolean logImageProcessing)
      • loadSvgImageFromStream

        public static java.awt.image.BufferedImage loadSvgImageFromStream​(@NotNull
                                                                          @NotNull java.io.InputStream svgInputStream,
                                                                          float sizeX,
                                                                          float sizeY,
                                                                          boolean logImageProcessing)
      • loadSvgImageFromURL

        public static java.awt.image.BufferedImage loadSvgImageFromURL​(@NotNull
                                                                       @NotNull java.lang.String imageURL,
                                                                       @Nullable
                                                                       @Nullable java.awt.Point size,
                                                                       boolean logImageProcessing)
      • loadSvgImageFromStream

        public static java.awt.image.BufferedImage loadSvgImageFromStream​(@NotNull
                                                                          @NotNull java.io.InputStream svgInputStream,
                                                                          float scale,
                                                                          boolean logImageProcessing)
      • loadSvgImageFromStream

        public static java.awt.image.BufferedImage loadSvgImageFromStream​(@NotNull
                                                                          @NotNull java.io.InputStream svgInputStream,
                                                                          @Nullable
                                                                          @Nullable java.awt.Point size,
                                                                          boolean logImageProcessing)
      • loadSvgImageFromStream

        public static java.awt.image.BufferedImage loadSvgImageFromStream​(java.io.InputStream svgInputStream,
                                                                          @Nullable
                                                                          @Nullable java.lang.Float sizeX,
                                                                          @Nullable
                                                                          @Nullable java.lang.Float sizeY,
                                                                          boolean logImageProcessing)
      • loadSvgImageFromFile

        public static java.awt.image.BufferedImage loadSvgImageFromFile​(java.io.File imageFile)
      • loadSvgImageFromFile

        public static java.awt.image.BufferedImage loadSvgImageFromFile​(java.io.File imageFile,
                                                                        boolean logImageProcessing)
      • loadImageFromURL

        public static java.awt.image.BufferedImage loadImageFromURL​(java.lang.String imageURL)
      • loadImageFromURL

        public static java.awt.image.BufferedImage loadImageFromURL​(java.lang.String imageURL,
                                                                    boolean logImageProcessing)
      • makeRoundedCorner

        public static java.awt.image.BufferedImage makeRoundedCorner​(java.awt.image.BufferedImage image,
                                                                     int cornerRadius,
                                                                     int borderWidth)
        http://stackoverflow.com/questions/7603400/how-to-make-a-rounded-corner-image-in-java
        Parameters:
        image - image to round corners on
        cornerRadius - corner radius in pixels
        borderWidth - border in pixels
        Returns:
        modified image
      • addBorder

        public static java.awt.image.BufferedImage addBorder​(java.awt.image.BufferedImage image,
                                                             java.awt.Color borderColor,
                                                             int borderWidth,
                                                             int cornerRadius)
      • drawRectangle

        public static java.awt.image.BufferedImage drawRectangle​(java.awt.image.BufferedImage image,
                                                                 int x,
                                                                 int y,
                                                                 int w,
                                                                 int h,
                                                                 java.awt.Color borderColor,
                                                                 int borderWidth,
                                                                 int cornerRadius)
      • drawRectangle

        public static java.awt.image.BufferedImage drawRectangle​(java.awt.image.BufferedImage image,
                                                                 int x,
                                                                 int y,
                                                                 int w,
                                                                 int h,
                                                                 java.awt.Color borderColor,
                                                                 int borderWidth,
                                                                 int cornerRadius,
                                                                 float[] dash,
                                                                 float dashPhase)
      • createCheckeredBackground

        public static java.awt.image.BufferedImage createCheckeredBackground​(java.awt.image.BufferedImage image,
                                                                             int checkerSize,
                                                                             java.awt.Color checkeredColor1,
                                                                             java.awt.Color checkeredColor2)
      • overlayImage

        public static java.awt.image.BufferedImage overlayImage​(java.awt.image.BufferedImage imageBack,
                                                                java.awt.Image imageFore,
                                                                int x,
                                                                int y)
      • drawOval

        public static java.awt.image.BufferedImage drawOval​(java.awt.image.BufferedImage image,
                                                            int x,
                                                            int y,
                                                            int w,
                                                            int h,
                                                            java.awt.Color borderColor,
                                                            int borderWidth,
                                                            float[] dash,
                                                            float dashPhase)
      • drawHighlightRectangle

        public static java.awt.image.BufferedImage drawHighlightRectangle​(java.awt.image.BufferedImage image,
                                                                          int x,
                                                                          int y,
                                                                          int w,
                                                                          int h,
                                                                          java.awt.Color borderColor,
                                                                          int borderWidth,
                                                                          int cornerRadius,
                                                                          java.awt.Color innerFillColor)
      • drawHighlightOval

        public static java.awt.image.BufferedImage drawHighlightOval​(java.awt.image.BufferedImage image,
                                                                     int x,
                                                                     int y,
                                                                     int w,
                                                                     int h,
                                                                     java.awt.Color borderColor,
                                                                     int borderWidth,
                                                                     java.awt.Color innerFillColor)
      • punchOuterHighlightRectangle

        public static java.awt.image.BufferedImage punchOuterHighlightRectangle​(java.awt.image.BufferedImage image,
                                                                                java.awt.image.BufferedImage outerImage,
                                                                                int x,
                                                                                int y,
                                                                                int w,
                                                                                int h,
                                                                                int borderWidth,
                                                                                int cornerRadius,
                                                                                java.awt.Color outerFillColor,
                                                                                int outerBorderWidth,
                                                                                int outerCornerRadius,
                                                                                boolean applyToImage)
      • punchOuterHighlightOval

        public static java.awt.image.BufferedImage punchOuterHighlightOval​(java.awt.image.BufferedImage image,
                                                                           java.awt.image.BufferedImage outerImage,
                                                                           int x,
                                                                           int y,
                                                                           int w,
                                                                           int h,
                                                                           int borderWidth,
                                                                           java.awt.Color outerFillColor,
                                                                           int outerBorderWidth,
                                                                           int outerCornerRadius,
                                                                           boolean applyToImage)
      • cropImage

        public static java.awt.image.BufferedImage cropImage​(java.awt.image.BufferedImage image,
                                                             int trimLeft,
                                                             int trimRight,
                                                             int trimTop,
                                                             int trimBottom)
      • removeAlpha

        public static java.awt.image.BufferedImage removeAlpha​(java.awt.image.BufferedImage image)
      • toTransparent

        public static java.awt.image.BufferedImage toTransparent​(java.awt.image.BufferedImage image,
                                                                 java.awt.Color color,
                                                                 int tolerance)
      • rotateImage

        public static java.awt.image.BufferedImage rotateImage​(java.awt.image.BufferedImage image,
                                                               int rotation)
      • getImageBytes

        public static byte[] getImageBytes​(java.awt.image.BufferedImage image)
      • encodeKroki

        @Nullable
        public static @Nullable java.lang.String encodeKroki​(java.lang.String text)
      • decodeKroki

        @Nullable
        public static @Nullable java.lang.String decodeKroki​(java.lang.String url)