Package org.aoju.bus.core.toolkit
Class ImageKit
java.lang.Object
org.aoju.bus.core.toolkit.ImageKit
图片处理工具类: 功能:缩放图像、切割图像、旋转、图像类型转换 彩色转黑白、文字水印、图片水印等
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Image彩色转为黑白二值化图片static void彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式static voidbinary(Image srcImage, OutputStream out, String imageType) 彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式static voidbinary(Image srcImage, ImageOutputStream destImageStream, String imageType) 彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式static void彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式static voidbinary(InputStream srcStream, OutputStream destStream, String imageType) 彩色转为黑白二值化图片 此方法并不关闭流static voidbinary(ImageInputStream srcStream, ImageOutputStream destStream, String imageType) 彩色转为黑白黑白二值化图片 此方法并不关闭流static void压缩图像,输出图像只支持jpg文件static voidconvert(Image srcImage, String formatName, ImageOutputStream destImageStream, boolean isSrcPng) 图像类型转换:GIF= JPG、GIF= PNG、PNG= JPG、PNG= GIF(X)、BMP= PNG 此方法并不关闭流static void图像类型转换:GIF= JPG、GIF= PNG、PNG= JPG、PNG= GIF(X)、BMP= PNGstatic voidconvert(InputStream srcStream, String formatName, OutputStream destStream) 图像类型转换:GIF= JPG、GIF= PNG、PNG= JPG、PNG= GIF(X)、BMP= PNG 此方法并不关闭流static BufferedImage将已有Image复制新的一份出来static BufferedImage将已有Image复制新的一份出来static BufferedImagecreateImage(String text, Font font, Color backgroundColor, Color fontColor, int imageType) 根据文字创建图片static voidcreateImage(String text, Font font, Color backgroundColor, Color fontColor, ImageOutputStream out) 根据文字创建PNG图片static Image图像切割(按指定起点坐标和宽高切割),填充满整个图片(直径取长宽最小值)static Image图像切割(按指定起点坐标和宽高切割)static Image图像切割(按指定起点坐标和宽高切割)static void图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static voidcut(Image srcImage, OutputStream out, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static voidcut(Image srcImage, ImageOutputStream destImageStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static void图像切割(按指定起点坐标和宽高切割)static voidcut(InputStream srcStream, OutputStream destStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static voidcut(ImageInputStream srcStream, ImageOutputStream destStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static BufferedImagefilter(ColorSpace colorSpace, BufferedImage image) 图片颜色转换 可以使用灰度 (gray)等static BufferedImagefilter(AffineTransform xform, BufferedImage image) 转换图片 可以使用一系列平移 (translation)、缩放 (scale)、翻转 (flip)、旋转 (rotation) 和错切 (shear) 来构造仿射变换。static BufferedImagefilter(BufferedImageOp op, BufferedImage image) 图片过滤转换static Imagefilter(ImageFilter filter, Image image) 图片滤镜,借助ImageFilter实现,实现不同的图片滤镜static Image水平翻转图像static void水平翻转图像static voidflip(Image image, OutputStream out) 水平翻转图像static voidflip(Image image, ImageOutputStream out) 水平翻转图像,写出格式为JPGstatic void水平翻转图像static ColorgetColor(int rgb) 获取一个RGB值对应的颜色static Color将颜色值转换成具体的颜色类型 汇集了常用的颜色集,支持以下几种形式:static ImageInputStreamstatic ImageOutputStreamgetImageOutputStream(File outFile) static ImageOutputStreamstatic StringgetMainColor(BufferedImage image, int[]... rgbFilters) 获取给定图片的主色调,背景填充用static PointgetPointCentre(Rectangle rectangle, int backgroundWidth, int backgroundHeight) 获得修正后的矩形坐标位置,变为以背景中心为基准坐标(即x,y == 0,0时,处于背景正中)static ImageReaderstatic Rectangle2DgetRectangle(String text, Font font) 获取font的样式应用在str上的整个矩形static ImageWriter根据给定的Image对象和格式获取对应的ImageWriter,如果未找到合适的Writer,返回nullstatic ImageWriter根据给定的图片格式或者扩展名获取ImageWriter,如果未找到合适的Writer,返回nullstatic Image彩色转为黑白static void彩色转为黑白static voidgray(Image srcImage, OutputStream out) 彩色转为黑白 此方法并不关闭流static voidgray(Image srcImage, ImageOutputStream destImageStream) 彩色转为黑白 此方法并不关闭流static void彩色转为黑白static voidgray(InputStream srcStream, OutputStream destStream) 彩色转为黑白 此方法并不关闭流static voidgray(ImageInputStream srcStream, ImageOutputStream destStream) 彩色转为黑白 此方法并不关闭流static ColorhexToColor(String hex) 16进制的颜色值转换为Color对象,例如#fcf6d6static Imagesmerge(BufferedImage srcImage, String fileType) 图片合成static Images图片合成static ImagepressImage(Image srcImage, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static ImagepressImage(Image srcImage, Image pressImage, Rectangle rectangle, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(Image srcImage, File outFile, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(Image srcImage, OutputStream out, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(Image srcImage, ImageOutputStream destImageStream, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(File srcImageFile, File destImageFile, Image pressImage, int x, int y, float alpha) 给图片添加图片水印static voidpressImage(InputStream srcStream, OutputStream destStream, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(ImageInputStream srcStream, ImageOutputStream destStream, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressText(Image srcImage, File destFile, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印 此方法并不关闭流static voidpressText(Image srcImage, OutputStream to, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印 此方法并不关闭流static Image给图片添加文字水印 此方法并不关闭流static voidpressText(Image srcImage, ImageOutputStream destImageStream, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印 此方法并不关闭流static voidpressText(File imageFile, File destFile, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印static voidpressText(InputStream srcStream, OutputStream destStream, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印 此方法并不关闭流static voidpressText(ImageInputStream srcStream, ImageOutputStream destStream, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印 此方法并不关闭流static Color生成随机颜色static ColorrandomColor(Random random) 生成随机颜色static BufferedImage从文件中读取图片static BufferedImageread(InputStream imageStream) 从流中读取图片static BufferedImage从文件中读取图片,请使用绝对路径,使用相对路径会相对于ClassPathstatic BufferedImage从URL中读取图片static BufferedImageread(ImageInputStream imageStream) 从图片流中读取图片static BufferedImage从Resource中读取图片static BufferedImageremove(BufferedImage bufferedImage, Color override, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static BufferedImageremove(ByteArrayOutputStream outputStream, Color override, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static boolean背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static boolean背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static boolean背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static Image旋转图片为指定角度 来自:http://blog.51cto.com/cping1982/130066static void旋转图片为指定角度 此方法不会关闭输出流static voidrotate(Image image, int degree, OutputStream out) 旋转图片为指定角度 此方法不会关闭输出流static voidrotate(Image image, int degree, ImageOutputStream out) 旋转图片为指定角度 此方法不会关闭输出流,输出格式为JPGstatic void旋转图片为指定角度 此方法不会关闭输出流static Image缩放图像(按比例缩放)static Image缩放图像(按长宽缩放) 注意:目标长宽与原图不成比例会变形static Image缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式static void缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(Image srcImage, OutputStream out, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(Image srcImage, ImageOutputStream destImageStream, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(Image srcImage, ImageOutputStream destImageStream, int width, int height, Color fixedColor) 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流static void缩放图像(按比例缩放) 缩放后默认为jpeg格式static void缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式static voidscale(InputStream srcStream, OutputStream destStream, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(InputStream srcStream, OutputStream destStream, int width, int height, Color fixedColor) 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(ImageInputStream srcStream, ImageOutputStream destStream, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(ImageInputStream srcStream, ImageOutputStream destStream, int width, int height, Color fixedColor) 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流static void图像切片(指定切片的宽度和高度)static void图像切片(指定切片的宽度和高度)static voidsliceByRowsAndCols(Image srcImage, File destDir, String format, int rows, int cols) 图像切割(指定切片的行数和列数)static voidsliceByRowsAndCols(File srcImageFile, File destDir, int rows, int cols) 图像切割(指定切片的行数和列数)static voidsliceByRowsAndCols(File srcImageFile, File destDir, String format, int rows, int cols) 图像切割(指定切片的行数和列数)static String将图片对象转换为Base64形式static StringtoBase64Uri(Image image, String imageType) 将图片对象转换为Base64的Data URI形式,格式为:data:image/[imageType];base64,[data]static BufferedImagetoBufferedImage(Image img) static BufferedImagetoBufferedImage(Image image, int imageType) Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制static BufferedImagetoBufferedImage(Image image, String imageType) Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制 默认的,png图片使用BufferedImage.TYPE_INT_ARGB模式,其它使用BufferedImage.TYPE_INT_RGB模式static byte[]将图片对象转换为bytes形式static StringtoHex(int r, int g, int b) RGB颜色值转换成十六进制颜色码static StringColor对象转16进制表示,例如#fcf6d6static BufferedImagetoImage(byte[] imageBytes) 将的图像bytes转为BufferedImagestatic BufferedImage将Base64编码的图像信息转为BufferedImagestatic RenderedImagetoRenderedImage(Image image) static ByteArrayInputStream将图片对象转换为InputStream形式static void写出图像为目标文件扩展名对应的格式static voidwrite(Image image, String imageType, OutputStream out) 写出图像static booleanwrite(Image image, String imageType, ImageOutputStream destImageStream) 写出图像为指定格式static booleanwrite(Image image, String imageType, ImageOutputStream destImageStream, float quality) 写出图像为指定格式static booleanwrite(Image image, ImageWriter writer, ImageOutputStream output, float quality) 通过ImageWriter写出图片到输出流static voidwriteJpg(Image image, OutputStream out) 写出图像为JPG格式static voidwriteJpg(Image image, ImageOutputStream destImageStream) 写出图像为JPG格式static voidwritePng(Image image, OutputStream out) 写出图像为PNG格式static voidwritePng(Image image, ImageOutputStream destImageStream) 写出图像为PNG格式
-
Constructor Details
-
ImageKit
public ImageKit()
-
-
Method Details
-
scale
-
scale
缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像来源流destStream- 缩放后的图像写出到的流scale- 缩放比例 比例大于1时为放大,小于1大于0为缩小
-
scale
缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像来源流destStream- 缩放后的图像写出到的流scale- 缩放比例 比例大于1时为放大,小于1大于0为缩小
-
scale
缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImage- 源图像来源流destFile- 缩放后的图像写出到的流scale- 缩放比例 比例大于1时为放大,小于1大于0为缩小- Throws:
InternalException- IO异常
-
scale
缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImage- 源图像来源流out- 缩放后的图像写出到的流scale- 缩放比例 比例大于1时为放大,小于1大于0为缩小- Throws:
InternalException- IO异常
-
scale
public static void scale(Image srcImage, ImageOutputStream destImageStream, float scale) throws InternalException 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImage- 源图像来源流destImageStream- 缩放后的图像写出到的流scale- 缩放比例 比例大于1时为放大,小于1大于0为缩小- Throws:
InternalException- IO异常
-
scale
-
scale
-
scale
public static void scale(File srcImageFile, File destImageFile, int width, int height, Color fixedColor) throws InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式- Parameters:
srcImageFile- 源图像文件地址destImageFile- 缩放后的图像地址width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
InternalException- IO异常
-
scale
public static void scale(InputStream srcStream, OutputStream destStream, int width, int height, Color fixedColor) throws InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 缩放后的图像目标流width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
InternalException- IO异常
-
scale
public static void scale(ImageInputStream srcStream, ImageOutputStream destStream, int width, int height, Color fixedColor) throws InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 缩放后的图像目标流width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
InternalException- IO异常
-
scale
public static void scale(Image srcImage, ImageOutputStream destImageStream, int width, int height, Color fixedColor) throws InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImage- 源图像destImageStream- 缩放后的图像目标流width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
InternalException- IO异常
-
scale
-
cut
-
cut
图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height
-
cut
public static void cut(ImageInputStream srcStream, ImageOutputStream destStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height
-
cut
图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcImage- 源图像destFile- 输出的文件rectangle- 矩形对象,表示矩形区域的x,y,width,height- Throws:
InternalException- IO异常
-
cut
public static void cut(Image srcImage, OutputStream out, Rectangle rectangle) throws InternalException 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcImage- 源图像out- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height- Throws:
InternalException- IO异常
-
cut
public static void cut(Image srcImage, ImageOutputStream destImageStream, Rectangle rectangle) throws InternalException 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcImage- 源图像destImageStream- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height- Throws:
InternalException- IO异常
-
cut
图像切割(按指定起点坐标和宽高切割)- Parameters:
srcImage- 源图像rectangle- 矩形对象,表示矩形区域的x,y,width,height- Returns:
BufferedImage
-
cut
-
cut
-
slice
-
slice
-
sliceByRowsAndCols
-
sliceByRowsAndCols
-
sliceByRowsAndCols
-
convert
-
convert
图像类型转换:GIF= JPG、GIF= PNG、PNG= JPG、PNG= GIF(X)、BMP= PNG 此方法并不关闭流- Parameters:
srcStream- 源图像流formatName- 包含格式非正式名称的 String:如JPG、JPEG、GIF等destStream- 目标图像输出流
-
convert
public static void convert(Image srcImage, String formatName, ImageOutputStream destImageStream, boolean isSrcPng) 图像类型转换:GIF= JPG、GIF= PNG、PNG= JPG、PNG= GIF(X)、BMP= PNG 此方法并不关闭流- Parameters:
srcImage- 源图像流formatName- 包含格式非正式名称的 String:如JPG、JPEG、GIF等destImageStream- 目标图像输出流isSrcPng- 源图片是否为PNG格式
-
gray
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 目标图像流
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 目标图像流
-
gray
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcImage- 源图像流out- 目标图像流
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcImage- 源图像流destImageStream- 目标图像流- Throws:
InternalException- IO异常
-
gray
-
binary
-
binary
彩色转为黑白二值化图片 此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 目标图像流imageType- 图片格式(扩展名)
-
binary
public static void binary(ImageInputStream srcStream, ImageOutputStream destStream, String imageType) 彩色转为黑白黑白二值化图片 此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 目标图像流imageType- 图片格式(扩展名)
-
binary
-
binary
彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式- Parameters:
srcImage- 源图像流out- 目标图像流imageType- 图片格式(扩展名)
-
binary
public static void binary(Image srcImage, ImageOutputStream destImageStream, String imageType) throws InternalException 彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式- Parameters:
srcImage- 源图像流destImageStream- 目标图像流imageType- 图片格式(扩展名)- Throws:
InternalException- IO异常
-
binary
-
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字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移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字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移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字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移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 InternalException 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像destFile- 目标流pressText- 水印文字color- 水印的字体颜色font-Font字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressText
public static void pressText(Image srcImage, OutputStream to, String pressText, Color color, Font font, int x, int y, float alpha) throws InternalException 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像to- 目标流pressText- 水印文字color- 水印的字体颜色font-Font字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressText
public static void pressText(Image srcImage, ImageOutputStream destImageStream, String pressText, Color color, Font font, int x, int y, float alpha) throws InternalException 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像destImageStream- 目标图像流pressText- 水印文字color- 水印的字体颜色font-Font字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressText
public static Image pressText(Image srcImage, String pressText, Color color, Font font, int x, int y, float alpha) 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像pressText- 水印文字color- 水印的字体颜色font-Font字体相关信息,如果默认则为nullx- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 处理后的图像
-
pressImage
-
pressImage
public static void pressImage(InputStream srcStream, OutputStream destStream, Image pressImage, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 目标图像流pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
-
pressImage
public static void pressImage(ImageInputStream srcStream, ImageOutputStream destStream, Image pressImage, int x, int y, float alpha) throws InternalException 给图片添加图片水印 此方法并不关闭流- Parameters:
srcStream- 源图像流destStream- 目标图像流pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressImage
public static void pressImage(Image srcImage, File outFile, Image pressImage, int x, int y, float alpha) throws InternalException 给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流outFile- 写出文件pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressImage
public static void pressImage(Image srcImage, OutputStream out, Image pressImage, int x, int y, float alpha) throws InternalException 给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流out- 目标图像流pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressImage
public static void pressImage(Image srcImage, ImageOutputStream destImageStream, Image pressImage, int x, int y, float alpha) throws InternalException 给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流destImageStream- 目标图像流pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
InternalException- IO异常
-
pressImage
给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值 默认在中间,偏移量相对于中间偏移y- 修正值 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 结果图片
-
pressImage
给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流pressImage- 水印图片,可以使用ImageIO.read(File)方法读取文件rectangle- 矩形对象,表示矩形区域的x,y,width,height,x,y从背景图片中心计算alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 结果图片
-
rotate
旋转图片为指定角度 此方法不会关闭输出流- Parameters:
imageFile- 被旋转图像文件degree- 旋转角度outFile- 输出文件- Throws:
InternalException- IO异常
-
rotate
旋转图片为指定角度 此方法不会关闭输出流- Parameters:
image- 目标图像degree- 旋转角度outFile- 输出文件- Throws:
InternalException- IO异常
-
rotate
旋转图片为指定角度 此方法不会关闭输出流- Parameters:
image- 目标图像degree- 旋转角度out- 输出流- Throws:
InternalException- IO异常
-
rotate
旋转图片为指定角度 此方法不会关闭输出流,输出格式为JPG- Parameters:
image- 目标图像degree- 旋转角度out- 输出图像流- Throws:
InternalException- IO异常
-
rotate
-
flip
水平翻转图像- Parameters:
imageFile- 图像文件outFile- 输出文件- Throws:
InternalException- IO异常
-
flip
水平翻转图像- Parameters:
image- 图像outFile- 输出文件- Throws:
InternalException- IO异常
-
flip
水平翻转图像- Parameters:
image- 图像out- 输出- Throws:
InternalException- IO异常
-
flip
水平翻转图像,写出格式为JPG- Parameters:
image- 图像out- 输出- Throws:
InternalException- IO异常
-
flip
-
compress
压缩图像,输出图像只支持jpg文件- Parameters:
imageFile- 图像文件outFile- 输出文件,只支持jpg文件quality- 质量- Throws:
InternalException- IO异常
-
toRenderedImage
- Parameters:
image-Image- Returns:
BufferedImage
-
toBufferedImage
- Parameters:
img-Image- Returns:
BufferedImage
-
toBufferedImage
Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制 默认的,png图片使用BufferedImage.TYPE_INT_ARGB模式,其它使用BufferedImage.TYPE_INT_RGB模式- Parameters:
image-ImageimageType- 目标图片类型,例如jpg或png等- Returns:
BufferedImage
-
toBufferedImage
Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制- Parameters:
image-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等- Returns:
BufferedImage
-
copyImage
将已有Image复制新的一份出来- Parameters:
image-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等- Returns:
BufferedImage- See Also:
-
copyImage
将已有Image复制新的一份出来- Parameters:
image-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等backgroundColor- 背景色,null表示默认背景色(黑色或者透明)- Returns:
BufferedImage- See Also:
-
toImage
将Base64编码的图像信息转为BufferedImage- Parameters:
base64- 图像的Base64表示- Returns:
BufferedImage- Throws:
InternalException- IO异常
-
toImage
将的图像bytes转为BufferedImage- Parameters:
imageBytes- 图像bytes- Returns:
BufferedImage- Throws:
InternalException- IO异常
-
toStream
将图片对象转换为InputStream形式- Parameters:
image- 图片对象imageType- 图片类型- Returns:
- Base64的字符串表现形式
-
toBase64
-
toBase64Uri
-
toBytes
-
createImage
-
createImage
public static BufferedImage createImage(String text, Font font, Color backgroundColor, Color fontColor, int imageType) 根据文字创建图片- Parameters:
text- 文字font- 字体FontbackgroundColor- 背景颜色,默认透明fontColor- 字体颜色,默认黑色imageType- 图片类型,见:BufferedImage- Returns:
- 图片
-
getRectangle
获取font的样式应用在str上的整个矩形- Parameters:
text- 字符串,必须非空font- 字体,必须非空- Returns:
Rectangle2D
-
writeJpg
public static void writeJpg(Image image, ImageOutputStream destImageStream) throws InternalException 写出图像为JPG格式- Parameters:
image-ImagedestImageStream- 写出到的目标流- Throws:
InternalException- IO异常
-
writePng
public static void writePng(Image image, ImageOutputStream destImageStream) throws InternalException 写出图像为PNG格式- Parameters:
image-ImagedestImageStream- 写出到的目标流- Throws:
InternalException- IO异常
-
writeJpg
写出图像为JPG格式- Parameters:
image-Imageout- 写出到的目标流- Throws:
InternalException- IO异常
-
writePng
写出图像为PNG格式- Parameters:
image-Imageout- 写出到的目标流- Throws:
InternalException- IO异常
-
write
写出图像- Parameters:
image-ImageimageType- 图片类型(图片扩展名)out- 写出到的目标流- Throws:
InternalException- IO异常
-
write
public static boolean write(Image image, String imageType, ImageOutputStream destImageStream) throws InternalException 写出图像为指定格式- Parameters:
image-ImageimageType- 图片类型(图片扩展名)destImageStream- 写出到的目标流- Returns:
- 是否成功写出, 如果返回false表示未找到合适的Writer
- Throws:
InternalException- IO异常
-
write
public static boolean write(Image image, String imageType, ImageOutputStream destImageStream, float quality) throws InternalException 写出图像为指定格式- Parameters:
image-ImageimageType- 图片类型(图片扩展名)destImageStream- 写出到的目标流quality- 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩- Returns:
- 是否成功写出, 如果返回false表示未找到合适的Writer
- Throws:
InternalException- IO异常
-
write
写出图像为目标文件扩展名对应的格式- Parameters:
image-ImagetargetFile- 目标文件- Throws:
InternalException- IO异常
-
write
public static boolean write(Image image, ImageWriter writer, ImageOutputStream output, float quality) 通过ImageWriter写出图片到输出流- Parameters:
image- 图片writer-ImageWriteroutput- 输出的Image流ImageOutputStreamquality- 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩- Returns:
- 是否成功写出
-
getReader
- Parameters:
type- 图片文件类型,例如 "jpeg" 或 "tiff"- Returns:
ImageReader
-
read
从文件中读取图片,请使用绝对路径,使用相对路径会相对于ClassPath- Parameters:
imageFilePath- 图片文件路径- Returns:
- 图片
-
read
-
read
从Resource中读取图片- Parameters:
resource- 图片资源- Returns:
- 图片
-
read
从流中读取图片- Parameters:
imageStream- 图片文件- Returns:
- 图片
-
read
从图片流中读取图片- Parameters:
imageStream- 图片文件- Returns:
- 图片
-
read
-
getImageOutputStream
- Parameters:
out-OutputStream- Returns:
ImageOutputStream- Throws:
InternalException- IO异常
-
getImageOutputStream
- Parameters:
outFile-File- Returns:
ImageOutputStream- Throws:
InternalException- IO异常
-
getImageInputStream
- Parameters:
in-InputStream- Returns:
ImageInputStream- Throws:
InternalException- IO异常
-
getWriter
根据给定的Image对象和格式获取对应的ImageWriter,如果未找到合适的Writer,返回null- Parameters:
image-ImageformatName- 图片格式,例如"jpg"、"png"- Returns:
ImageWriter
-
getWriter
根据给定的图片格式或者扩展名获取ImageWriter,如果未找到合适的Writer,返回null- Parameters:
formatName- 图片格式或扩展名,例如"jpg"、"png"- Returns:
ImageWriter
-
toHex
-
toHex
RGB颜色值转换成十六进制颜色码- Parameters:
r- 红(R)g- 绿(G)b- 蓝(B)- Returns:
- 返回字符串形式的 十六进制颜色码 如
-
hexToColor
-
getColor
-
getColor
-
randomColor
-
randomColor
-
merge
图片合成- Parameters:
srcImage- 背景图片对象(画布以背景图宽高为基准)fileType- 输出图片格式- Returns:
Images
-
merge
-
getMainColor
获取给定图片的主色调,背景填充用- Parameters:
image-BufferedImagergbFilters- 过滤多种颜色- Returns:
String#ffffff
-
remove
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
inputPath- 要处理图片的路径outputPath- 输出图片的路径tolerance- 容差值[根据图片的主题色,加入容差值,值的范围在0~255之间]- Returns:
- 返回处理结果 true:图片处理完成 false:图片处理失败
-
remove
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
input- 需要进行操作的图片output- 最后输出的文件tolerance- 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]- Returns:
- 返回处理结果 true:图片处理完成 false:图片处理失败
-
remove
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
input- 需要进行操作的图片output- 最后输出的文件override- 指定替换成的背景颜色 为null时背景为透明tolerance- 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]- Returns:
- 返回处理结果 true:图片处理完成 false:图片处理失败
-
remove
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
bufferedImage- 需要进行处理的图片流override- 指定替换成的背景颜色 为null时背景为透明tolerance- 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]- Returns:
- 返回处理好的图片流
-
remove
public static BufferedImage remove(ByteArrayOutputStream outputStream, Color override, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
outputStream- 需要进行处理的图片字节数组流override- 指定替换成的背景颜色 为null时背景为透明tolerance- 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]- Returns:
- 返回处理好的图片流
-
filter
图片颜色转换 可以使用灰度 (gray)等- Parameters:
colorSpace- 颜色模式,如灰度等image- 被转换的图片- Returns:
- 转换后的图片
-
filter
转换图片 可以使用一系列平移 (translation)、缩放 (scale)、翻转 (flip)、旋转 (rotation) 和错切 (shear) 来构造仿射变换。- Parameters:
xform- 2D仿射变换,它执行从 2D 坐标到其他 2D 坐标的线性映射,保留了线的“直线性”和“平行性”。image- 被转换的图片- Returns:
- 转换后的图片
-
filter
图片过滤转换- Parameters:
op- 过滤操作实现,如二维转换可传入AffineTransformOpimage- 原始图片- Returns:
- 过滤后的图片
-
filter
图片滤镜,借助ImageFilter实现,实现不同的图片滤镜- Parameters:
filter- 滤镜实现image- 图片- Returns:
- 滤镜后的图片
-
getPointCentre
-