Class ImgUtil

java.lang.Object
com.luna.common.img.ImgUtil

public class ImgUtil extends Object
图片处理工具类:
功能:缩放图像、切割图像、旋转、图像类型转换、彩色转黑白、文字水印、图片水印等
参考:http://blog.csdn.net/zhangzhikaixinya/article/details/8459400
Author:
Looly
  • Field Details

  • Constructor Details

    • ImgUtil

      public ImgUtil()
  • Method Details

    • scale

      public static void scale(File srcImageFile, File destImageFile, float scale)
      缩放图像(按比例缩放),目标文件的扩展名决定目标文件类型
      Parameters:
      srcImageFile - 源图像文件
      destImageFile - 缩放后的图像文件,扩展名决定目标类型
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
    • scale

      public static void scale(InputStream srcStream, OutputStream destStream, float scale)
      缩放图像(按比例缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcStream - 源图像来源流
      destStream - 缩放后的图像写出到的流
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
      Since:
      3.0.9
    • scale

      public static void scale(ImageInputStream srcStream, ImageOutputStream destStream, float scale)
      缩放图像(按比例缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcStream - 源图像来源流
      destStream - 缩放后的图像写出到的流
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
      Since:
      3.1.0
    • scale

      public static void scale(Image srcImg, File destFile, float scale) throws RuntimeException
      缩放图像(按比例缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcImg - 源图像来源流,使用结束后需手动调用flush(Image)释放资源
      destFile - 缩放后的图像写出到的流
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • scale

      public static void scale(Image srcImg, OutputStream out, float scale) throws RuntimeException
      缩放图像(按比例缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcImg - 源图像来源流,使用结束后需手动调用flush(Image)释放资源
      out - 缩放后的图像写出到的流
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • scale

      public static void scale(Image srcImg, ImageOutputStream destImageStream, float scale) throws RuntimeException
      缩放图像(按比例缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcImg - 源图像来源流,使用结束后需手动调用flush(Image)释放资源
      destImageStream - 缩放后的图像写出到的流
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.0
    • scale

      public static Image scale(Image srcImg, float scale)
      缩放图像(按比例缩放)
      Parameters:
      srcImg - 源图像来源流,使用结束后需手动调用flush(Image)释放资源
      scale - 缩放比例。比例大于1时为放大,小于1大于0为缩小
      Returns:
      Image
      Since:
      3.1.0
    • scale

      public static Image scale(Image srcImg, int width, int height)
      缩放图像(按长宽缩放)
      注意:目标长宽与原图不成比例会变形
      Parameters:
      srcImg - 源图像来源流,使用结束后需手动调用flush(Image)释放资源
      width - 目标宽度
      height - 目标高度
      Returns:
      Image
      Since:
      3.1.0
    • scale

      public static void scale(File srcImageFile, File destImageFile, int width, int height, Color fixedColor) throws RuntimeException
      缩放图像(按高度和宽度缩放)
      缩放后默认格式与源图片相同,无法识别原图片默认JPG
      Parameters:
      srcImageFile - 源图像文件地址
      destImageFile - 缩放后的图像地址
      width - 缩放后的宽度
      height - 缩放后的高度
      fixedColor - 补充的颜色,不补充为null
      Throws:
      RuntimeException - IO异常
    • scale

      public static void scale(InputStream srcStream, OutputStream destStream, int width, int height, Color fixedColor) throws RuntimeException
      缩放图像(按高度和宽度缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 缩放后的图像目标流
      width - 缩放后的宽度
      height - 缩放后的高度
      fixedColor - 比例不对时补充的颜色,不补充为null
      Throws:
      RuntimeException - IO异常
    • scale

      public static void scale(ImageInputStream srcStream, ImageOutputStream destStream, int width, int height, Color fixedColor) throws RuntimeException
      缩放图像(按高度和宽度缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 缩放后的图像目标流
      width - 缩放后的宽度
      height - 缩放后的高度
      fixedColor - 比例不对时补充的颜色,不补充为null
      Throws:
      RuntimeException - IO异常
    • scale

      public static void scale(Image srcImage, ImageOutputStream destImageStream, int width, int height, Color fixedColor) throws RuntimeException
      缩放图像(按高度和宽度缩放)
      缩放后默认为jpeg格式,此方法并不关闭流
      Parameters:
      srcImage - 源图像
      destImageStream - 缩放后的图像目标流
      width - 缩放后的宽度
      height - 缩放后的高度
      fixedColor - 比例不对时补充的颜色,不补充为null
      Throws:
      RuntimeException - IO异常
    • scale

      public static Image scale(Image srcImage, int width, int height, Color fixedColor)
      缩放图像(按高度和宽度缩放)
      缩放后默认为jpeg格式
      Parameters:
      srcImage - 源图像
      width - 缩放后的宽度
      height - 缩放后的高度
      fixedColor - 比例不对时补充的颜色,不补充为null
      Returns:
      Image
    • cut

      public static void cut(File srcImgFile, File destImgFile, Rectangle rectangle)
      图像切割(按指定起点坐标和宽高切割)
      Parameters:
      srcImgFile - 源图像文件
      destImgFile - 切片后的图像文件
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Since:
      3.1.0
    • cut

      public static void cut(InputStream srcStream, OutputStream destStream, Rectangle rectangle)
      图像切割(按指定起点坐标和宽高切割),此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 切片后的图像输出流
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Since:
      3.1.0
    • cut

      public static void cut(ImageInputStream srcStream, ImageOutputStream destStream, Rectangle rectangle)
      图像切割(按指定起点坐标和宽高切割),此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 切片后的图像输出流
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Since:
      3.1.0
    • cut

      public static void cut(Image srcImage, File destFile, Rectangle rectangle) throws RuntimeException
      图像切割(按指定起点坐标和宽高切割),此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      destFile - 输出的文件
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • cut

      public static void cut(Image srcImage, OutputStream out, Rectangle rectangle) throws RuntimeException
      图像切割(按指定起点坐标和宽高切割),此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      out - 切片后的图像输出流
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.0
    • cut

      public static void cut(Image srcImage, ImageOutputStream destImageStream, Rectangle rectangle) throws RuntimeException
      图像切割(按指定起点坐标和宽高切割),此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      destImageStream - 切片后的图像输出流
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.0
    • cut

      public static Image cut(Image srcImage, Rectangle rectangle)
      图像切割(按指定起点坐标和宽高切割)
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      rectangle - 矩形对象,表示矩形区域的x,y,width,height
      Returns:
      BufferedImage
      Since:
      3.1.0
    • cut

      public static Image cut(Image srcImage, int x, int y)
      图像切割(按指定起点坐标和宽高切割),填充满整个图片(直径取长宽最小值)
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      x - 原图的x坐标起始位置
      y - 原图的y坐标起始位置
      Returns:
      Image
      Since:
      4.1.15
    • cut

      public static Image cut(Image srcImage, int x, int y, int radius)
      图像切割(按指定起点坐标和宽高切割)
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      x - 原图的x坐标起始位置
      y - 原图的y坐标起始位置
      radius - 半径,小于0表示填充满整个图片(直径取长宽最小值)
      Returns:
      Image
      Since:
      4.1.15
    • slice

      public static void slice(File srcImageFile, File descDir, int destWidth, int destHeight)
      图像切片(指定切片的宽度和高度)
      Parameters:
      srcImageFile - 源图像
      descDir - 切片目标文件夹
      destWidth - 目标切片宽度。默认200
      destHeight - 目标切片高度。默认150
    • slice

      public static void slice(Image srcImage, File descDir, int destWidth, int destHeight)
      图像切片(指定切片的宽度和高度)
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      descDir - 切片目标文件夹
      destWidth - 目标切片宽度。默认200
      destHeight - 目标切片高度。默认150
    • sliceByRowsAndCols

      public static void sliceByRowsAndCols(File srcImageFile, File destDir, int rows, int cols)
      图像切割(指定切片的行数和列数)
      Parameters:
      srcImageFile - 源图像文件
      destDir - 切片目标文件夹
      rows - 目标切片行数。默认2,必须是范围 [1, 20] 之内
      cols - 目标切片列数。默认2,必须是范围 [1, 20] 之内
    • sliceByRowsAndCols

      public static void sliceByRowsAndCols(File srcImageFile, File destDir, String format, int rows, int cols)
      图像切割(指定切片的行数和列数)
      Parameters:
      srcImageFile - 源图像文件
      destDir - 切片目标文件夹
      format - 目标文件格式
      rows - 目标切片行数。默认2,必须是范围 [1, 20] 之内
      cols - 目标切片列数。默认2,必须是范围 [1, 20] 之内
    • sliceByRowsAndCols

      public static void sliceByRowsAndCols(Image srcImage, File destDir, int rows, int cols)
      图像切割(指定切片的行数和列数),默认RGB模式
      Parameters:
      srcImage - 源图像,如果非BufferedImage,则默认使用RGB模式
      destDir - 切片目标文件夹
      rows - 目标切片行数。默认2,必须是范围 [1, 20] 之内
      cols - 目标切片列数。默认2,必须是范围 [1, 20] 之内
    • sliceByRowsAndCols

      public static void sliceByRowsAndCols(Image srcImage, File destDir, String format, int rows, int cols)
      图像切割(指定切片的行数和列数),默认RGB模式
      Parameters:
      srcImage - 源图像,如果非BufferedImage,则默认使用RGB模式
      destDir - 切片目标文件夹
      format - 目标文件格式
      rows - 目标切片行数。默认2,必须是范围 [1, 20] 之内
      cols - 目标切片列数。默认2,必须是范围 [1, 20] 之内
      Since:
      5.8.6
    • convert

      public static void convert(File srcImageFile, File destImageFile)
      图像类型转换:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      Parameters:
      srcImageFile - 源图像文件
      destImageFile - 目标图像文件
    • convert

      public static void convert(InputStream srcStream, String formatName, OutputStream destStream)
      图像类型转换:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      formatName - 包含格式非正式名称的 String:如JPG、JPEG、GIF等
      destStream - 目标图像输出流
      Since:
      3.0.9
    • convert

      public static void convert(Image srcImage, String formatName, ImageOutputStream destImageStream)
      图像类型转换:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      formatName - 包含格式非正式名称的 String:如JPG、JPEG、GIF等
      destImageStream - 目标图像输出流
      Since:
      4.1.14
    • convert

      @Deprecated public static void convert(Image srcImage, String formatName, ImageOutputStream destImageStream, boolean isSrcPng)
      Deprecated.
      图像类型转换:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      formatName - 包含格式非正式名称的 String:如JPG、JPEG、GIF等
      destImageStream - 目标图像输出流
      isSrcPng - 源图片是否为PNG格式(参数无效)
      Since:
      4.1.14
    • gray

      public static void gray(File srcImageFile, File destImageFile)
      彩色转为黑白
      Parameters:
      srcImageFile - 源图像地址
      destImageFile - 目标图像地址
    • gray

      public static void gray(InputStream srcStream, OutputStream destStream)
      彩色转为黑白
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      Since:
      3.0.9
    • gray

      public static void gray(ImageInputStream srcStream, ImageOutputStream destStream)
      彩色转为黑白
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      Since:
      3.0.9
    • gray

      public static void gray(Image srcImage, File outFile)
      彩色转为黑白
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      outFile - 目标文件
      Since:
      3.2.2
    • gray

      public static void gray(Image srcImage, OutputStream out)
      彩色转为黑白
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      out - 目标图像流
      Since:
      3.2.2
    • gray

      public static void gray(Image srcImage, ImageOutputStream destImageStream) throws RuntimeException
      彩色转为黑白
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      destImageStream - 目标图像流
      Throws:
      RuntimeException - IO异常
      Since:
      3.0.9
    • gray

      public static Image gray(Image srcImage)
      彩色转为黑白
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      Returns:
      Image灰度后的图片
      Since:
      3.1.0
    • binary

      public static void binary(File srcImageFile, File destImageFile)
      彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式
      Parameters:
      srcImageFile - 源图像地址
      destImageFile - 目标图像地址
    • binary

      public static void binary(InputStream srcStream, OutputStream destStream, String imageType)
      彩色转为黑白二值化图片
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      imageType - 图片格式(扩展名)
      Since:
      4.0.5
    • binary

      public static void binary(ImageInputStream srcStream, ImageOutputStream destStream, String imageType)
      彩色转为黑白黑白二值化图片
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      imageType - 图片格式(扩展名)
      Since:
      4.0.5
    • binary

      public static void binary(Image srcImage, File outFile)
      彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      outFile - 目标文件
      Since:
      4.0.5
    • binary

      public static void binary(Image srcImage, OutputStream out, String imageType)
      彩色转为黑白二值化图片
      此方法并不关闭流,输出JPG格式
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      out - 目标图像流
      imageType - 图片格式(扩展名)
      Since:
      4.0.5
    • binary

      public static void binary(Image srcImage, ImageOutputStream destImageStream, String imageType) throws RuntimeException
      彩色转为黑白二值化图片
      此方法并不关闭流,输出JPG格式
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      destImageStream - 目标图像流
      imageType - 图片格式(扩展名)
      Throws:
      RuntimeException - IO异常
      Since:
      4.0.5
    • binary

      public static Image binary(Image srcImage)
      彩色转为黑白二值化图片
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      Returns:
      Image二值化后的图片
      Since:
      4.0.5
    • pressText

      public static void pressText(File imageFile, File destFile, String pressText, Color color, Font font, int x, int y, float alpha)
      给图片添加文字水印
      Parameters:
      imageFile - 源图像文件
      destFile - 目标图像文件
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
    • pressText

      public static void pressText(InputStream srcStream, OutputStream destStream, String pressText, Color color, Font font, int x, int y, float alpha)
      给图片添加文字水印
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
    • pressText

      public static void pressText(ImageInputStream srcStream, ImageOutputStream destStream, String pressText, Color color, Font font, int x, int y, float alpha)
      给图片添加文字水印
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
    • pressText

      public static void pressText(Image srcImage, File destFile, String pressText, Color color, Font font, int x, int y, float alpha) throws RuntimeException
      给图片添加文字水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      destFile - 目标流
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • pressText

      public static void pressText(Image srcImage, OutputStream to, String pressText, Color color, Font font, int x, int y, float alpha) throws RuntimeException
      给图片添加文字水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      to - 目标流
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • pressText

      public static void pressText(Image srcImage, ImageOutputStream destImageStream, String pressText, Color color, Font font, int x, int y, float alpha) throws RuntimeException
      给图片添加文字水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      destImageStream - 目标图像流
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
    • pressText

      public static Image pressText(Image srcImage, String pressText, Color color, Font font, int x, int y, float alpha)
      给图片添加文字水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像,使用结束后需手动调用flush(Image)释放资源
      pressText - 水印文字
      color - 水印的字体颜色
      font - Font 字体相关信息,如果默认则为null
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Returns:
      处理后的图像
      Since:
      3.2.2
    • pressImage

      public static void pressImage(File srcImageFile, File destImageFile, Image pressImg, int x, int y, float alpha)
      给图片添加图片水印
      Parameters:
      srcImageFile - 源图像文件
      destImageFile - 目标图像文件
      pressImg - 水印图片
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
    • pressImage

      public static void pressImage(InputStream srcStream, OutputStream destStream, Image pressImg, int x, int y, float alpha)
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
    • pressImage

      public static void pressImage(ImageInputStream srcStream, ImageOutputStream destStream, Image pressImg, int x, int y, float alpha) throws RuntimeException
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      destStream - 目标图像流
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
    • pressImage

      public static void pressImage(Image srcImage, File outFile, Image pressImg, int x, int y, float alpha) throws RuntimeException
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      outFile - 写出文件
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • pressImage

      public static void pressImage(Image srcImage, OutputStream out, Image pressImg, int x, int y, float alpha) throws RuntimeException
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      out - 目标图像流
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • pressImage

      public static void pressImage(Image srcImage, ImageOutputStream destImageStream, Image pressImg, int x, int y, float alpha) throws RuntimeException
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      destImageStream - 目标图像流
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Throws:
      RuntimeException - IO异常
    • pressImage

      public static Image pressImage(Image srcImage, Image pressImg, int x, int y, float alpha)
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      x - 修正值。 默认在中间,偏移量相对于中间偏移
      y - 修正值。 默认在中间,偏移量相对于中间偏移
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Returns:
      结果图片
    • pressImage

      public static Image pressImage(Image srcImage, Image pressImg, Rectangle rectangle, float alpha)
      给图片添加图片水印
      此方法并不关闭流
      Parameters:
      srcImage - 源图像流,使用结束后需手动调用flush(Image)释放资源
      pressImg - 水印图片,可以使用ImageIO.read(File)方法读取文件
      rectangle - 矩形对象,表示矩形区域的x,y,width,height,x,y从背景图片中心计算
      alpha - 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
      Returns:
      结果图片
      Since:
      4.1.14
    • rotate

      public static void rotate(File imageFile, int degree, File outFile) throws RuntimeException
      旋转图片为指定角度
      此方法不会关闭输出流
      Parameters:
      imageFile - 被旋转图像文件
      degree - 旋转角度
      outFile - 输出文件
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • rotate

      public static void rotate(Image image, int degree, File outFile) throws RuntimeException
      旋转图片为指定角度
      此方法不会关闭输出流
      Parameters:
      image - 目标图像,使用结束后需手动调用flush(Image)释放资源
      degree - 旋转角度
      outFile - 输出文件
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • rotate

      public static void rotate(Image image, int degree, OutputStream out) throws RuntimeException
      旋转图片为指定角度
      此方法不会关闭输出流
      Parameters:
      image - 目标图像,使用结束后需手动调用flush(Image)释放资源
      degree - 旋转角度
      out - 输出流
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • rotate

      public static void rotate(Image image, int degree, ImageOutputStream out) throws RuntimeException
      旋转图片为指定角度
      此方法不会关闭输出流,输出格式为JPG
      Parameters:
      image - 图像,使用结束后需手动调用flush(Image)释放资源
      degree - 旋转角度
      out - 输出图像流
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • rotate

      public static Image rotate(Image image, int degree)
      旋转图片为指定角度
      来自:http://blog.51cto.com/cping1982/130066
      Parameters:
      image - 图像,使用结束后需手动调用flush(Image)释放资源
      degree - 旋转角度
      Returns:
      旋转后的图片
      Since:
      3.2.2
    • flip

      public static void flip(File imageFile, File outFile) throws RuntimeException
      水平翻转图像
      Parameters:
      imageFile - 图像文件
      outFile - 输出文件
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • flip

      public static void flip(Image image, File outFile) throws RuntimeException
      水平翻转图像
      Parameters:
      image - 图像,使用结束后需手动调用flush(Image)释放资源
      outFile - 输出文件
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • flip

      public static void flip(Image image, OutputStream out) throws RuntimeException
      水平翻转图像
      Parameters:
      image - 图像,使用结束后需手动调用flush(Image)释放资源
      out - 输出
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • flip

      public static void flip(Image image, ImageOutputStream out) throws RuntimeException
      水平翻转图像,写出格式为JPG
      Parameters:
      image - 图像,使用结束后需手动调用flush(Image)释放资源
      out - 输出
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • flip

      public static Image flip(Image image)
      水平翻转图像
      Parameters:
      image - 图像,使用结束后需手动调用flush(Image)释放资源
      Returns:
      翻转后的图片
      Since:
      3.2.2
    • compress

      public static void compress(File imageFile, File outFile, float quality) throws RuntimeException
      压缩图像,输出图像只支持jpg文件
      Parameters:
      imageFile - 图像文件
      outFile - 输出文件,只支持jpg文件
      quality - 压缩比例,必须为0~1
      Throws:
      RuntimeException - IO异常
      Since:
      4.3.2
    • toRenderedImage

      @Deprecated public static RenderedImage toRenderedImage(Image img)
      ImageRenderedImage
      首先尝试强转,否则新建一个BufferedImage后重新绘制,使用 BufferedImage.TYPE_INT_RGB 模式。
      Parameters:
      img - Image
      Returns:
      BufferedImage
      Since:
      4.3.2
    • toBufferedImage

      @Deprecated public static BufferedImage toBufferedImage(Image img)
      ImageBufferedImage
      首先尝试强转,否则新建一个BufferedImage后重新绘制,使用 BufferedImage.TYPE_INT_RGB 模式
      Parameters:
      img - Image
      Returns:
      BufferedImage
    • castToRenderedImage

      public static RenderedImage castToRenderedImage(Image img, String imageType)
      ImageRenderedImage
      首先尝试强转,否则新建一个BufferedImage后重新绘制,使用 BufferedImage.TYPE_INT_RGB 模式。
      Parameters:
      img - Image
      imageType - 目标图片类型,例如jpg或png等
      Returns:
      BufferedImage
      Since:
      4.3.2
    • castToBufferedImage

      public static BufferedImage castToBufferedImage(Image img, String imageType)
      ImageBufferedImage
      首先尝试强转,否则新建一个BufferedImage后重新绘制,使用 imageType 模式
      Parameters:
      img - Image
      imageType - 目标图片类型,例如jpg或png等
      Returns:
      BufferedImage
    • toBufferedImage

      public static BufferedImage toBufferedImage(Image image, String imageType)
      ImageBufferedImage
      如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制
      默认的,png图片使用 BufferedImage.TYPE_INT_ARGB模式,其它使用 BufferedImage.TYPE_INT_RGB 模式
      Parameters:
      image - Image
      imageType - 目标图片类型,例如jpg或png等
      Returns:
      BufferedImage
      Since:
      4.3.2
    • toBufferedImage

      public static BufferedImage toBufferedImage(Image image, String imageType, Color backgroundColor)
      ImageBufferedImage
      如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制
      默认的,png图片使用 BufferedImage.TYPE_INT_ARGB模式,其它使用 BufferedImage.TYPE_INT_RGB 模式
      Parameters:
      image - Image
      imageType - 目标图片类型,例如jpg或png等
      backgroundColor - 背景色Color
      Returns:
      BufferedImage
      Since:
      4.3.2
    • toBufferedImage

      public static BufferedImage toBufferedImage(Image image, int imageType)
      ImageBufferedImage
      如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制
      Parameters:
      image - Image
      imageType - 目标图片类型,BufferedImage中的常量,例如黑白等
      Returns:
      BufferedImage
      Since:
      5.4.7
    • toBufferedImage

      public static BufferedImage toBufferedImage(Image image, int imageType, Color backgroundColor)
      ImageBufferedImage
      如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制
      Parameters:
      image - Image
      imageType - 目标图片类型,BufferedImage中的常量,例如黑白等
      backgroundColor - 背景色Color
      Returns:
      BufferedImage
      Since:
      5.4.7
    • copyImage

      public static BufferedImage copyImage(Image img, int imageType)
      将已有Image复制新的一份出来
      Parameters:
      img - Image
      imageType - 目标图片类型,BufferedImage中的常量,例如黑白等
      Returns:
      BufferedImage
      See Also:
    • copyImage

      public static BufferedImage copyImage(Image img, int imageType, Color backgroundColor)
      将已有Image复制新的一份出来
      Parameters:
      img - Image
      imageType - 目标图片类型,BufferedImage中的常量,例如黑白等
      backgroundColor - 背景色,null 表示默认背景色(黑色或者透明)
      Returns:
      BufferedImage
      Since:
      4.5.17
      See Also:
    • createCompatibleImage

      public static BufferedImage createCompatibleImage(int width, int height, int transparency) throws HeadlessException
      创建与当前设备颜色模式兼容的 BufferedImage
      Parameters:
      width - 宽度
      height - 高度
      transparency - 透明模式,见 Transparency
      Returns:
      BufferedImage
      Throws:
      HeadlessException
      Since:
      5.7.13
    • toImage

      public static BufferedImage toImage(String base64) throws RuntimeException
      将Base64编码的图像信息转为 BufferedImage
      Parameters:
      base64 - 图像的Base64表示
      Returns:
      BufferedImage
      Throws:
      RuntimeException - IO异常
    • toImage

      public static BufferedImage toImage(byte[] imageBytes) throws RuntimeException
      将的图像bytes转为 BufferedImage
      Parameters:
      imageBytes - 图像bytes
      Returns:
      BufferedImage
      Throws:
      RuntimeException - IO异常
    • toStream

      public static ByteArrayInputStream toStream(Image image, String imageType)
      将图片对象转换为InputStream形式
      Parameters:
      image - 图片对象
      imageType - 图片类型
      Returns:
      Base64的字符串表现形式
      Since:
      4.2.4
    • toBase64DataUri

      public static String toBase64DataUri(Image image, String imageType)
      将图片对象转换为Base64的Data URI形式,格式为:data:image/[imageType];base64,[data]
      Parameters:
      image - 图片对象
      imageType - 图片类型
      Returns:
      Base64的字符串表现形式
      Since:
      5.3.6
    • toBase64

      public static String toBase64(Image image, String imageType)
      将图片对象转换为Base64形式
      Parameters:
      image - 图片对象
      imageType - 图片类型
      Returns:
      Base64的字符串表现形式
      Since:
      4.1.8
    • toBytes

      public static byte[] toBytes(Image image, String imageType)
      将图片对象转换为bytes形式
      Parameters:
      image - 图片对象
      imageType - 图片类型
      Returns:
      Base64的字符串表现形式
      Since:
      5.2.4
    • createImage

      public static void createImage(String str, Font font, Color backgroundColor, Color fontColor, ImageOutputStream out) throws RuntimeException
      根据文字创建PNG图片
      Parameters:
      str - 文字
      font - 字体Font
      backgroundColor - 背景颜色,默认透明
      fontColor - 字体颜色,默认黑色
      out - 图片输出地
      Throws:
      RuntimeException - IO异常
    • createTransparentImage

      public static void createTransparentImage(String str, Font font, Color fontColor, ImageOutputStream out) throws RuntimeException
      根据文字创建透明背景的PNG图片
      Parameters:
      str - 文字
      font - 字体Font
      fontColor - 字体颜色,默认黑色
      out - 图片输出地
      Throws:
      RuntimeException - IO异常
    • createImage

      public static BufferedImage createImage(String str, Font font, Color backgroundColor, Color fontColor, int imageType) throws RuntimeException
      根据文字创建图片
      Parameters:
      str - 文字
      font - 字体Font
      backgroundColor - 背景颜色,默认透明
      fontColor - 字体颜色,默认黑色
      imageType - 图片类型,见:BufferedImage
      Returns:
      图片
      Throws:
      RuntimeException - IO异常
    • getRectangle

      public static Rectangle2D getRectangle(String str, Font font)
      获取font的样式应用在str上的整个矩形
      Parameters:
      str - 字符串,必须非空
      font - 字体,必须非空
      Returns:
      Rectangle2D
      Since:
      5.3.3
    • createFont

      public static Font createFont(File fontFile)
      根据文件创建字体
      首先尝试创建Font.TRUETYPE_FONT字体,此类字体无效则创建Font.TYPE1_FONT
      Parameters:
      fontFile - 字体文件
      Returns:
      Font
      Since:
      3.0.9
    • createFont

      public static Font createFont(InputStream fontStream)
      根据文件创建字体
      首先尝试创建Font.TRUETYPE_FONT字体,此类字体无效则创建Font.TYPE1_FONT
      Parameters:
      fontStream - 字体流
      Returns:
      Font
      Since:
      3.0.9
    • createGraphics

      public static Graphics2D createGraphics(BufferedImage image, Color color)
      Parameters:
      image - BufferedImage
      color - Color背景颜色以及当前画笔颜色
      Returns:
      Graphics2D
      Since:
      3.2.3
      See Also:
    • writeJpg

      public static void writeJpg(Image image, ImageOutputStream destImageStream) throws RuntimeException
      写出图像为JPG格式
      Parameters:
      image - Image
      destImageStream - 写出到的目标流
      Throws:
      RuntimeException - IO异常
    • writePng

      public static void writePng(Image image, ImageOutputStream destImageStream) throws RuntimeException
      写出图像为PNG格式
      Parameters:
      image - Image
      destImageStream - 写出到的目标流
      Throws:
      RuntimeException - IO异常
    • writeJpg

      public static void writeJpg(Image image, OutputStream out) throws RuntimeException
      写出图像为JPG格式
      Parameters:
      image - Image
      out - 写出到的目标流
      Throws:
      RuntimeException - IO异常
      Since:
      4.0.10
    • writePng

      public static void writePng(Image image, OutputStream out) throws RuntimeException
      写出图像为PNG格式
      Parameters:
      image - Image
      out - 写出到的目标流
      Throws:
      RuntimeException - IO异常
      Since:
      4.0.10
    • write

      public static void write(ImageInputStream srcStream, String formatName, ImageOutputStream destStream)
      按照目标格式写出图像:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      此方法并不关闭流
      Parameters:
      srcStream - 源图像流
      formatName - 包含格式非正式名称的 String:如JPG、JPEG、GIF等
      destStream - 目标图像输出流
      Since:
      5.0.0
    • write

      public static void write(Image image, String imageType, OutputStream out) throws RuntimeException
      写出图像:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      此方法并不关闭流
      Parameters:
      image - Image
      imageType - 图片类型(图片扩展名)
      out - 写出到的目标流
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.2
    • write

      public static boolean write(Image image, String imageType, ImageOutputStream destImageStream) throws RuntimeException
      写出图像为指定格式:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
      此方法并不关闭流
      Parameters:
      image - Image
      imageType - 图片类型(图片扩展名)
      destImageStream - 写出到的目标流
      Returns:
      是否成功写出,如果返回false表示未找到合适的Writer
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.2
    • write

      public static boolean write(Image image, String imageType, ImageOutputStream destImageStream, float quality) throws RuntimeException
      写出图像为指定格式
      Parameters:
      image - Image
      imageType - 图片类型(图片扩展名)
      destImageStream - 写出到的目标流
      quality - 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩
      Returns:
      是否成功写出,如果返回false表示未找到合适的Writer
      Throws:
      RuntimeException - IO异常
      Since:
      4.3.2
    • write

      public static boolean write(Image image, String imageType, ImageOutputStream destImageStream, float quality, Color backgroundColor) throws RuntimeException
      写出图像为指定格式
      Parameters:
      image - Image
      imageType - 图片类型(图片扩展名)
      destImageStream - 写出到的目标流
      quality - 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩
      backgroundColor - 背景色Color
      Returns:
      是否成功写出,如果返回false表示未找到合适的Writer
      Throws:
      RuntimeException - IO异常
      Since:
      4.3.2
    • write

      public static void write(Image image, File targetFile) throws RuntimeException
      写出图像为目标文件扩展名对应的格式
      Parameters:
      image - Image
      targetFile - 目标文件
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.0
    • write

      public static boolean write(Image image, ImageWriter writer, ImageOutputStream output, float quality)
      通过ImageWriter写出图片到输出流
      Parameters:
      image - 图片
      writer - ImageWriter
      output - 输出的Image流ImageOutputStream
      quality - 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩
      Returns:
      是否成功写出
      Since:
      4.3.2
    • getReader

      public static ImageReader getReader(String type)
      Parameters:
      type - 图片文件类型,例如 "jpeg" 或 "tiff"
      Returns:
      ImageReader
    • read

      public static BufferedImage read(String imageFilePath)
      从文件中读取图片,请使用绝对路径,使用相对路径会相对于ClassPath
      Parameters:
      imageFilePath - 图片文件路径
      Returns:
      图片
      Since:
      4.1.15
    • read

      public static BufferedImage read(File imageFile)
      从文件中读取图片
      Parameters:
      imageFile - 图片文件
      Returns:
      图片
      Since:
      3.2.2
    • getImage

      public static Image getImage(URL url)
      从URL中获取或读取图片对象
      Parameters:
      url - URL
      Returns:
      Image
      Since:
      5.5.8
    • read

      public static BufferedImage read(InputStream imageStream)
      从流中读取图片
      Parameters:
      imageStream - 图片文件
      Returns:
      图片
      Since:
      3.2.2
    • read

      public static BufferedImage read(ImageInputStream imageStream)
      从图片流中读取图片
      Parameters:
      imageStream - 图片文件
      Returns:
      图片
      Since:
      3.2.2
    • read

      public static BufferedImage read(URL imageUrl)
      从URL中读取图片
      Parameters:
      imageUrl - 图片文件
      Returns:
      图片
      Since:
      3.2.2
    • getImageOutputStream

      public static ImageOutputStream getImageOutputStream(OutputStream out) throws RuntimeException
      Parameters:
      out - OutputStream
      Returns:
      ImageOutputStream
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.2
    • getImageOutputStream

      public static ImageOutputStream getImageOutputStream(File outFile) throws RuntimeException
      Parameters:
      outFile - File
      Returns:
      ImageOutputStream
      Throws:
      RuntimeException - IO异常
      Since:
      3.2.2
    • getImageInputStream

      public static ImageInputStream getImageInputStream(InputStream in) throws RuntimeException
      Parameters:
      in - InputStream
      Returns:
      ImageInputStream
      Throws:
      RuntimeException - IO异常
      Since:
      3.1.2
    • getWriter

      public static ImageWriter getWriter(Image img, String formatName)
      根据给定的Image对象和格式获取对应的ImageWriter,如果未找到合适的Writer,返回null
      Parameters:
      img - Image
      formatName - 图片格式,例如"jpg"、"png"
      Returns:
      ImageWriter
      Since:
      4.3.2
    • getWriter

      public static ImageWriter getWriter(String formatName)
      根据给定的图片格式或者扩展名获取ImageWriter,如果未找到合适的Writer,返回null
      Parameters:
      formatName - 图片格式或扩展名,例如"jpg"、"png"
      Returns:
      ImageWriter
      Since:
      4.3.2
    • toHex

      public static String toHex(Color color)
      Color对象转16进制表示,例如#fcf6d6
      Parameters:
      color - Color
      Returns:
      16进制的颜色值,例如#fcf6d6
      Since:
      4.1.14
      See Also:
    • toHex

      public static String toHex(int r, int g, int b)
      RGB颜色值转换成十六进制颜色码
      Parameters:
      r - 红(R)
      g - 绿(G)
      b - 蓝(B)
      Returns:
      返回字符串形式的 十六进制颜色码
      See Also:
    • hexToColor

      public static Color hexToColor(String hex)
      16进制的颜色值转换为Color对象,例如#fcf6d6
      Parameters:
      hex - 16进制的颜色值,例如#fcf6d6
      Returns:
      Color
      Since:
      4.1.14
    • getColor

      public static Color getColor(int rgb)
      获取一个RGB值对应的颜色
      Parameters:
      rgb - RGB值
      Returns:
      Color
      Since:
      4.1.14
      See Also:
    • getColor

      public static Color getColor(String colorName)
      将颜色值转换成具体的颜色类型 汇集了常用的颜色集,支持以下几种形式:
       1. 颜色的英文名(大小写皆可)
       2. 16进制表示,例如:#fcf6d6或者$fcf6d6
       3. RGB形式,例如:13,148,252
       

      方法来自:com.lnwazg.kit

      Parameters:
      colorName - 颜色的英文名,16进制表示或RGB表示
      Returns:
      Color
      Since:
      4.1.14
      See Also:
    • randomColor

      public static Color randomColor()
      生成随机颜色
      Returns:
      随机颜色
      Since:
      3.1.2
      See Also:
    • randomColor

      public static Color randomColor(Random random)
      生成随机颜色
      Parameters:
      random - 随机对象 Random
      Returns:
      随机颜色
      Since:
      3.1.2
      See Also:
    • getPointBaseCentre

      public static Point getPointBaseCentre(Rectangle rectangle, int backgroundWidth, int backgroundHeight)
      获得修正后的矩形坐标位置,变为以背景中心为基准坐标(即x,y == 0,0时,处于背景正中)
      Parameters:
      rectangle - 矩形
      backgroundWidth - 参考宽(背景宽)
      backgroundHeight - 参考高(背景高)
      Returns:
      修正后的Point
      Since:
      5.3.6
    • getMainColor

      public static String getMainColor(BufferedImage image, int[]... rgbFilters)
      获取给定图片的主色调,背景填充用
      Parameters:
      image - BufferedImage
      rgbFilters - 过滤多种颜色
      Returns:
      String #ffffff
      Since:
      5.6.7
    • backgroundRemoval

      public static boolean backgroundRemoval(String inputPath, String outputPath, int tolerance)
      背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.
      Parameters:
      inputPath - 要处理图片的路径
      outputPath - 输出图片的路径
      tolerance - 容差值[根据图片的主题色,加入容差值,值的范围在0~255之间]
      Returns:
      返回处理结果 true:图片处理完成 false:图片处理失败
    • backgroundRemoval

      public static boolean backgroundRemoval(File input, File output, int tolerance)
      背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.
      Parameters:
      input - 需要进行操作的图片
      output - 最后输出的文件
      tolerance - 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]
      Returns:
      返回处理结果 true:图片处理完成 false:图片处理失败
    • backgroundRemoval

      public static boolean backgroundRemoval(File input, File output, Color override, int tolerance)
      背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.
      Parameters:
      input - 需要进行操作的图片
      output - 最后输出的文件
      override - 指定替换成的背景颜色 为null时背景为透明
      tolerance - 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]
      Returns:
      返回处理结果 true:图片处理完成 false:图片处理失败
    • backgroundRemoval

      public static BufferedImage backgroundRemoval(BufferedImage bufferedImage, Color override, int tolerance)
      背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.
      Parameters:
      bufferedImage - 需要进行处理的图片流
      override - 指定替换成的背景颜色 为null时背景为透明
      tolerance - 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]
      Returns:
      返回处理好的图片流
    • backgroundRemoval

      public static BufferedImage backgroundRemoval(ByteArrayOutputStream outputStream, Color override, int tolerance)
      背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.
      Parameters:
      outputStream - 需要进行处理的图片字节数组流
      override - 指定替换成的背景颜色 为null时背景为透明
      tolerance - 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]
      Returns:
      返回处理好的图片流
    • colorConvert

      public static BufferedImage colorConvert(ColorSpace colorSpace, BufferedImage image)
      图片颜色转换
      可以使用灰度 (gray)等
      Parameters:
      colorSpace - 颜色模式,如灰度等
      image - 被转换的图片
      Returns:
      转换后的图片
      Since:
      5.7.8
    • transform

      public static BufferedImage transform(AffineTransform xform, BufferedImage image)
      转换图片
      可以使用一系列平移 (translation)、缩放 (scale)、翻转 (flip)、旋转 (rotation) 和错切 (shear) 来构造仿射变换。
      Parameters:
      xform - 2D仿射变换,它执行从 2D 坐标到其他 2D 坐标的线性映射,保留了线的“直线性”和“平行性”。
      image - 被转换的图片
      Returns:
      转换后的图片
      Since:
      5.7.8
    • filter

      public static BufferedImage filter(BufferedImageOp op, BufferedImage image)
      图片过滤转换
      Parameters:
      op - 过滤操作实现,如二维转换可传入AffineTransformOp
      image - 原始图片
      Returns:
      过滤后的图片
      Since:
      5.7.8
    • filter

      public static Image filter(ImageFilter filter, Image image)
      图片滤镜,借助 ImageFilter实现,实现不同的图片滤镜
      Parameters:
      filter - 滤镜实现
      image - 图片
      Returns:
      滤镜后的图片
      Since:
      5.7.8
    • flush

      public static void flush(Image image)
      刷新和释放Image 资源
      Parameters:
      image - Image
    • getDataUri

      public static String getDataUri(String mimeType, Charset charset, String encoding, String data)
      Data URI Scheme封装。data URI scheme 允许我们使用内联(inline-code)的方式在网页中包含数据,
      目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入。常用于将图片嵌入网页。

      Data URI的格式规范:

           data:[<mime type>][;charset=<charset>][;<encoding>],<encoded data>
       
      Parameters:
      mimeType - 可选项(null表示无),数据类型(image/png、text/plain等)
      charset - 可选项(null表示无),源文本的字符集编码方式
      encoding - 数据编码方式(US-ASCII,BASE64等)
      data - 编码后的数据
      Returns:
      Data URI字符串
      Since:
      5.3.6