Package org.miaixz.bus.extra.image
Class ImageKit
java.lang.Object
org.miaixz.bus.extra.image.ImageKit
图片处理工具类: 功能:缩放图像、切割图像、旋转、图像类型转换、彩色转黑白、文字水印、图片水印等 参考:http://blog.csdn.net/zhangzhikaixinya/article/details/8459400
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic BufferedImagebackgroundRemoval(BufferedImage bufferedImage, Color override, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static BufferedImagebackgroundRemoval(ByteArrayOutputStream outputStream, Color override, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static voidbackgroundRemoval(File input, File output, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static voidbackgroundRemoval(File input, File output, Color override, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static voidbackgroundRemoval(String inputPath, String outputPath, int tolerance) 背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.static Image彩色转为黑白二值化图片static void彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式static voidbinary(Image srcImage, OutputStream out, String imageType) 彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式static voidbinary(Image srcImage, ImageOutputStream targetImageStream, String imageType) 彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式static void彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式static voidbinary(InputStream srcStream, OutputStream targetStream, String imageType) 彩色转为黑白二值化图片 此方法并不关闭流static voidbinary(ImageInputStream srcStream, ImageOutputStream targetStream, String imageType) 彩色转为黑白黑白二值化图片 此方法并不关闭流static BufferedImagecastToBufferedImage(Image img, String imageType) static RenderedImagecastToRenderedImage(Image img, String imageType) static BufferedImagecolorConvert(ColorSpace colorSpace, BufferedImage image) 图片颜色转换 可以使用灰度 (gray)等static void压缩图像,输出图像只支持jpg文件static voidconvert(Image srcImage, String formatName, ImageOutputStream targetImageStream) 图像类型转换: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 targetStream) 图像类型转换:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流static BufferedImage将已有Image复制新的一份出来static BufferedImage将已有Image复制新的一份出来static BufferedImagecreateCompatibleImage(int width, int height, int transparency) 创建与当前设备颜色模式兼容的BufferedImagestatic Font创建默认字体static FontcreateFont(File fontFile) 根据文件创建字体 首先尝试创建Font.TRUETYPE_FONT字体,此类字体无效则创建Font.TYPE1_FONTstatic FontcreateFont(InputStream fontStream) 根据文件创建字体 首先尝试创建Font.TRUETYPE_FONT字体,此类字体无效则创建Font.TYPE1_FONTstatic FontcreateFont(String name, int size) 创建指定名称的字体static Graphics2DcreateGraphics(BufferedImage image, Color color) 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 FontcreateSansSerifFont(int size) 创建SansSerif字体static voidcreateTransparentImage(String text, Font font, 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 targetImageStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static void图像切割(按指定起点坐标和宽高切割)static voidcut(InputStream srcStream, OutputStream targetStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static voidcut(ImageInputStream srcStream, ImageOutputStream targetStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流static Graphics绘制图片static Graphics绘制图片static GraphicsdrawString(Graphics g, String text, Font font, Color color, int width, int height) 绘制字符串,默认抗锯齿static Graphics绘制字符串,默认抗锯齿static Graphics绘制字符串,默认抗锯齿。static GraphicsdrawStringColourful(Graphics g, String text, Font font, int width, int height) 绘制字符串,使用随机颜色,默认抗锯齿static GraphicsdrawStringColourful(Graphics g, String str, Font font, int width, int height, Color compareColor, int minColorDistance) 绘制字符串,使用随机颜色,默认抗锯齿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 void刷新和释放Image资源static Font[]获得系统中支持的所有字体static intgetCenterY(Graphics g, int backgroundHeight) 获取文字居中高度的Y坐标(距离上边距距离) 此方法依赖FontMetrics,如果获取失败,默认为背景高度的1/3static DimensiongetDimension(FontMetrics metrics, String text) 获得字体对应字符串的长宽信息static Image从URL中获取或读取图片对象static ImageInputStreamstatic ImageOutputStreamgetImageOutputStream(File outFile) static ImageOutputStreamstatic PointgetPointBaseCentre(Rectangle rectangle, int backgroundWidth, int backgroundHeight) 获得修正后的矩形坐标位置,变为以背景中心为基准坐标(即x,y == 0,0时,处于背景正中)static ImageReaderstatic Rectangle2DgetRectangle(String text, Font font) 获取font的样式应用在str上的整个矩形getWidthAndHeight(InputStream imageStream, String type) 通过ImageInputStream获取对应类型的宽和高getWidthAndHeight(ImageInputStream imageStream, String type) 通过ImageInputStream获取对应类型的宽和高static ImageWriter根据给定的Image对象和格式获取对应的ImageWriter,如果未找到合适的Writer,返回nullstatic ImageWriter根据给定的图片格式或者扩展名获取ImageWriter,如果未找到合适的Writer,返回nullstatic Image彩色转为黑白static void彩色转为黑白static voidgray(Image srcImage, OutputStream out) 彩色转为黑白 此方法并不关闭流static voidgray(Image srcImage, ImageOutputStream targetImageStream) 彩色转为黑白 此方法并不关闭流static void彩色转为黑白static voidgray(InputStream srcStream, OutputStream targetStream) 彩色转为黑白 此方法并不关闭流static voidgray(ImageInputStream srcStream, ImageOutputStream targetStream) 彩色转为黑白 此方法并不关闭流static ImagepressImage(Image srcImage, Image pressImg, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static ImagepressImage(Image srcImage, Image pressImg, Rectangle rectangle, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(Image srcImage, File outFile, Image pressImg, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static voidpressImage(Image srcImage, OutputStream out, Image pressImg, int x, int y, float alpha) 给图片添加图片水印,写出目标图片格式为JPG 此方法并不关闭流static voidpressImage(Image srcImage, ImageOutputStream targetImageStream, Image pressImg, int x, int y, float alpha) 给图片添加图片水印,写出目标图片格式为JPG 此方法并不关闭流static voidpressImage(File srcImageFile, File targetImageFile, Image pressImg, int x, int y, float alpha) 给图片添加图片水印static voidpressImage(InputStream srcStream, OutputStream targetStream, Image pressImg, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流static ImagepressImageFull(Image srcImage, Image pressImage, int lineHeight, int degree, float alpha) 给图片添加全屏图像水印 此方法并不关闭流static voidpressImageFull(File imageFile, File destFile, File pressImageFile, int lineHeight, int degree, float alpha) 给图片添加全屏图片水印static voidpressImageFull(InputStream srcStream, OutputStream targetStream, InputStream pressStream, int lineHeight, int degree, float alpha) 给图片添加全屏图像水印,写出格式为JPG 此方法并不关闭流static void给图片添加文字水印 此方法并不关闭流static voidpressText(Image srcImage, OutputStream to, ImageText pressText) 给图片添加文字水印 此方法并不关闭流static voidpressText(Image srcImage, ImageOutputStream targetImageStream, ImageText pressText) 给图片添加文字水印 此方法并不关闭流static Image给图片添加文字水印 此方法并不关闭流static void给图片添加文字水印static voidpressText(InputStream srcStream, OutputStream targetStream, ImageText pressText) 给图片添加文字水印 此方法并不关闭流static ImagepressTextFull(Image srcImage, String pressText, Color color, Font font, int lineHeight, int degree, float alpha) 给图片添加全屏文字水印 此方法并不关闭流static BufferedImage从文件中读取图片static BufferedImageread(InputStream imageStream) 从流中读取图片static BufferedImage从文件中读取图片,请使用绝对路径,使用相对路径会相对于ClassPathstatic BufferedImage从URL中读取图片static BufferedImageread(ImageInputStream imageStream) 从图片流中读取图片static BufferedImageread(org.miaixz.bus.core.io.resource.Resource resource) 从Resource中读取图片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 srcImg, OutputStream out, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(Image srcImg, ImageOutputStream destImageStream, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(Image srcImage, ImageOutputStream targetImageStream, int width, int height, Color fixedColor) 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流static void缩放图像(按比例缩放),目标文件的扩展名决定目标文件类型static void缩放图像(按高度和宽度缩放) 缩放后默认格式与源图片相同,无法识别原图片默认JPGstatic voidscale(InputStream srcStream, OutputStream targetStream, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(InputStream srcStream, OutputStream targetStream, int width, int height, Color fixedColor) 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(ImageInputStream srcStream, ImageOutputStream targetStream, float scale) 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流static voidscale(ImageInputStream srcStream, ImageOutputStream targetStream, int width, int height, Color fixedColor) 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流static Graphics2DsetAlpha(Graphics2D g, float alpha) 设置画笔透明度static void图像切片(指定切片的宽度和高度)static void图像切片(指定切片的宽度和高度)static voidsliceByRowsAndCols(Image srcImage, File destDir, String formatName, int rows, int cols) 图像切割(指定切片的行数和列数),默认RGB模式static voidsliceByRowsAndCols(File srcImageFile, File targetDir, String formatName, int rows, int cols) 图像切割(指定切片的行数和列数)static String将图片对象转换为Base64形式static StringtoBase64DataUri(Image image, String imageType) 将图片对象转换为Base64的Data URI形式,格式为:data:image/[imageType];base64,[data]static BufferedImagetoBufferedImage(Image image, int imageType) Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制static BufferedImagetoBufferedImage(Image image, int imageType, Color backgroundColor) Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制static BufferedImagetoBufferedImage(Image image, String imageType) Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制 默认的,png图片使用BufferedImage.TYPE_INT_ARGB模式,其它使用BufferedImage.TYPE_INT_RGB模式static BufferedImagetoBufferedImage(Image image, String imageType, Color backgroundColor) Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制 默认的,png图片使用BufferedImage.TYPE_INT_ARGB模式,其它使用BufferedImage.TYPE_INT_RGB模式static byte[]将图片对象转换为bytes形式static BufferedImagetoImage(byte[] imageBytes) 将的图像bytes转为BufferedImagestatic BufferedImage将Base64编码的图像信息转为BufferedImagestatic ByteArrayInputStream将图片对象转换为InputStream形式static BufferedImagetransform(AffineTransform xform, BufferedImage image) 转换图片 可以使用一系列平移 (translation)、缩放 (scale)、翻转 (flip)、旋转 (rotation) 和错切 (shear) 来构造仿射变换。static void写出图像为目标文件扩展名对应的格式static voidwrite(Image image, String imageType, OutputStream out) 写出图像:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流static voidwrite(Image image, String imageType, ImageOutputStream targetImageStream) 写出图像为指定格式:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流static voidwrite(Image image, String imageType, ImageOutputStream output, float quality) 通过ImageWriter写出图片到输出流static voidwrite(Image image, String imageType, ImageOutputStream out, float quality, Color backgroundColor) 写出图像为指定格式static voidwrite(ImageInputStream srcStream, String formatName, ImageOutputStream targetStream) 按照目标格式写出图像:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流static voidwriteJpg(Image image, OutputStream out) 写出图像为JPG格式static voidwriteJpg(Image image, ImageOutputStream targetImageStream) 写出图像为JPG格式static voidwritePng(Image image, OutputStream out) 写出图像为PNG格式static voidwritePng(Image image, ImageOutputStream targetImageStream) 写出图像为PNG格式
-
Field Details
-
IMAGE_TYPE_GIF
图形交换格式:GIF- See Also:
-
IMAGE_TYPE_JPG
联合照片专家组:JPG- See Also:
-
IMAGE_TYPE_JPEG
联合照片专家组:JPEG- See Also:
-
IMAGE_TYPE_BMP
英文Bitmap(位图)的简写,它是Windows操作系统中的标准图像文件格式:BMP- See Also:
-
IMAGE_TYPE_PNG
可移植网络图形:PNG- See Also:
-
IMAGE_TYPE_PSD
Photoshop的专用格式:PSD- See Also:
-
-
Constructor Details
-
ImageKit
public ImageKit()
-
-
Method Details
-
scale
缩放图像(按比例缩放),目标文件的扩展名决定目标文件类型- Parameters:
srcImageFile- 源图像文件destImageFile- 缩放后的图像文件,扩展名决定目标类型scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小
-
scale
缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像来源流targetStream- 缩放后的图像写出到的流scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小
-
scale
缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像来源流targetStream- 缩放后的图像写出到的流scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小
-
scale
public static void scale(Image srcImg, File destFile, float scale) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImg- 源图像来源流,使用结束后需手动调用flush(Image)释放资源destFile- 缩放后的图像写出到的流scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
public static void scale(Image srcImg, OutputStream out, float scale) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImg- 源图像来源流,使用结束后需手动调用flush(Image)释放资源out- 缩放后的图像写出到的流scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
public static void scale(Image srcImg, ImageOutputStream destImageStream, float scale) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按比例缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImg- 源图像来源流,使用结束后需手动调用flush(Image)释放资源destImageStream- 缩放后的图像写出到的流scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
缩放图像(按比例缩放)- Parameters:
srcImg- 源图像来源流,使用结束后需手动调用flush(Image)释放资源scale- 缩放比例。比例大于1时为放大,小于1大于0为缩小- Returns:
Image
-
scale
缩放图像(按长宽缩放) 注意:目标长宽与原图不成比例会变形- Parameters:
srcImg- 源图像来源流,使用结束后需手动调用flush(Image)释放资源width- 目标宽度height- 目标高度- Returns:
Image
-
scale
public static void scale(File srcImageFile, File targetImageFile, int width, int height, Color fixedColor) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按高度和宽度缩放) 缩放后默认格式与源图片相同,无法识别原图片默认JPG- Parameters:
srcImageFile- 源图像文件地址targetImageFile- 缩放后的图像地址width- 缩放后的宽度height- 缩放后的高度fixedColor- 补充的颜色,不补充为null- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
public static void scale(InputStream srcStream, OutputStream targetStream, int width, int height, Color fixedColor) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 缩放后的图像目标流width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
public static void scale(ImageInputStream srcStream, ImageOutputStream targetStream, int width, int height, Color fixedColor) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 缩放后的图像目标流width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
public static void scale(Image srcImage, ImageOutputStream targetImageStream, int width, int height, Color fixedColor) throws org.miaixz.bus.core.lang.exception.InternalException 缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式,此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源targetImageStream- 缩放后的图像目标流width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
scale
缩放图像(按高度和宽度缩放) 缩放后默认为jpeg格式- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源width- 缩放后的宽度height- 缩放后的高度fixedColor- 比例不对时补充的颜色,不补充为null- Returns:
Image
-
cut
图像切割(按指定起点坐标和宽高切割)- Parameters:
srcImgFile- 源图像文件targetImgFile- 切片后的图像文件rectangle- 矩形对象,表示矩形区域的x,y,width,height
-
cut
图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height
-
cut
public static void cut(ImageInputStream srcStream, ImageOutputStream targetStream, Rectangle rectangle) 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height
-
cut
public static void cut(Image srcImage, File destFile, Rectangle rectangle) throws org.miaixz.bus.core.lang.exception.InternalException 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源destFile- 输出的文件rectangle- 矩形对象,表示矩形区域的x,y,width,height- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
cut
public static void cut(Image srcImage, OutputStream out, Rectangle rectangle) throws org.miaixz.bus.core.lang.exception.InternalException 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcImage- 源图像out- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
cut
public static void cut(Image srcImage, ImageOutputStream targetImageStream, Rectangle rectangle) throws org.miaixz.bus.core.lang.exception.InternalException 图像切割(按指定起点坐标和宽高切割),此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源targetImageStream- 切片后的图像输出流rectangle- 矩形对象,表示矩形区域的x,y,width,height- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
cut
图像切割(按指定起点坐标和宽高切割)- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源rectangle- 矩形对象,表示矩形区域的x,y,width,height- Returns:
BufferedImage
-
cut
图像切割(按指定起点坐标和宽高切割),填充满整个图片(直径取长宽最小值)- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源x- 原图的x坐标起始位置y- 原图的y坐标起始位置- Returns:
Image
-
cut
图像切割(按指定起点坐标和宽高切割)- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源x- 原图的x坐标起始位置y- 原图的y坐标起始位置radius- 半径,小于0表示填充满整个图片(直径取长宽最小值)- Returns:
Image
-
slice
图像切片(指定切片的宽度和高度)- Parameters:
srcImageFile- 源图像descDir- 切片目标文件夹targetWidth- 目标切片宽度。默认200targetHeight- 目标切片高度。默认150
-
slice
图像切片(指定切片的宽度和高度)- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源descDir- 切片目标文件夹targetWidth- 目标切片宽度。默认200targetHeight- 目标切片高度。默认150
-
sliceByRowsAndCols
public static void sliceByRowsAndCols(File srcImageFile, File targetDir, String formatName, int rows, int cols) 图像切割(指定切片的行数和列数)- Parameters:
srcImageFile- 源图像文件targetDir- 切片目标文件夹formatName- 格式名称,即图片格式后缀rows- 目标切片行数。默认2,必须是范围 [1, 20] 之内cols- 目标切片列数。默认2,必须是范围 [1, 20] 之内
-
sliceByRowsAndCols
public static void sliceByRowsAndCols(Image srcImage, File destDir, String formatName, int rows, int cols) 图像切割(指定切片的行数和列数),默认RGB模式- Parameters:
srcImage- 源图像,如果非BufferedImage,则默认使用RGB模式,使用结束后需手动调用flush(Image)释放资源destDir- 切片目标文件夹formatName- 格式名称,即图片格式后缀rows- 目标切片行数。默认2,必须是范围 [1, 20] 之内cols- 目标切片列数。默认2,必须是范围 [1, 20] 之内
-
convert
图像类型转换:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG- Parameters:
srcImageFile- 源图像文件targetImageFile- 目标图像文件
-
convert
图像类型转换:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流- Parameters:
srcStream- 源图像流formatName- 包含格式非正式名称的 String:如JPG、JPEG、GIF等targetStream- 目标图像输出流
-
convert
图像类型转换:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源formatName- 包含格式非正式名称的 String:如JPG、JPEG、GIF等targetImageStream- 目标图像输出流
-
gray
彩色转为黑白- Parameters:
srcImageFile- 源图像地址targetImageFile- 目标图像地址
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流
-
gray
彩色转为黑白- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源outFile- 目标文件
-
gray
彩色转为黑白 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源out- 目标图像流
-
gray
public static void gray(Image srcImage, ImageOutputStream targetImageStream) throws org.miaixz.bus.core.lang.exception.InternalException 彩色转为黑白 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源targetImageStream- 目标图像流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
gray
彩色转为黑白- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源- Returns:
Image灰度后的图片
-
binary
彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式- Parameters:
srcImageFile- 源图像地址targetImageFile- 目标图像地址
-
binary
彩色转为黑白二值化图片 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流imageType- 图片格式(扩展名)
-
binary
public static void binary(ImageInputStream srcStream, ImageOutputStream targetStream, String imageType) 彩色转为黑白黑白二值化图片 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流imageType- 图片格式(扩展名)
-
binary
彩色转为黑白二值化图片,根据目标文件扩展名确定转换后的格式- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源outFile- 目标文件
-
binary
彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源out- 目标图像流imageType- 图片格式(扩展名)
-
binary
public static void binary(Image srcImage, ImageOutputStream targetImageStream, String imageType) throws org.miaixz.bus.core.lang.exception.InternalException 彩色转为黑白二值化图片 此方法并不关闭流,输出JPG格式- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源targetImageStream- 目标图像流imageType- 图片格式(扩展名)- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
binary
彩色转为黑白二值化图片- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源- Returns:
Image二值化后的图片
-
pressText
给图片添加文字水印- Parameters:
imageFile- 源图像文件destFile- 目标图像文件pressText- 水印文字
-
pressText
给图片添加文字水印 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流pressText- 水印文本信息
-
pressText
public static void pressText(Image srcImage, File destFile, ImageText pressText) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源destFile- 目标流pressText- 水印文字信息- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressText
public static void pressText(Image srcImage, OutputStream to, ImageText pressText) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源to- 目标流pressText- 水印文字信息- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressText
public static void pressText(Image srcImage, ImageOutputStream targetImageStream, ImageText pressText) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源targetImageStream- 目标图像流pressText- 水印文字信息- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressText
给图片添加文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源pressText- 水印文字信息- Returns:
- 处理后的图像
-
pressTextFull
public static Image pressTextFull(Image srcImage, String pressText, Color color, Font font, int lineHeight, int degree, float alpha) 给图片添加全屏文字水印 此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源pressText- 水印文字color- 水印的字体颜色font-Font字体相关信息,如果默认则为nulllineHeight- 行高degree- 旋转角度,(单位:弧度),以圆点(0,0)为圆心,正代表顺时针,负代表逆时针alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 处理后的图像
-
pressImage
public static void pressImage(File srcImageFile, File targetImageFile, Image pressImg, int x, int y, float alpha) 给图片添加图片水印- Parameters:
srcImageFile- 源图像文件targetImageFile- 目标图像文件pressImg- 水印图片,使用结束后需手动调用flush(Image)释放资源x- 修正值。 默认在中间,偏移量相对于中间偏移y- 修正值。 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
-
pressImage
public static void pressImage(InputStream srcStream, OutputStream targetStream, Image pressImg, int x, int y, float alpha) 给图片添加图片水印 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流pressImg- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值。 默认在中间,偏移量相对于中间偏移y- 修正值。 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
-
pressImage
public static void pressImage(Image srcImage, File outFile, Image pressImg, int x, int y, float alpha) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源outFile- 写出文件pressImg- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值。 默认在中间,偏移量相对于中间偏移y- 修正值。 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressImage
public static void pressImage(Image srcImage, OutputStream out, Image pressImg, int x, int y, float alpha) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加图片水印,写出目标图片格式为JPG 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源out- 目标图像流pressImg- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值。 默认在中间,偏移量相对于中间偏移y- 修正值。 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressImage
public static void pressImage(Image srcImage, ImageOutputStream targetImageStream, Image pressImg, int x, int y, float alpha) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加图片水印,写出目标图片格式为JPG 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源targetImageStream- 目标图像流pressImg- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值。 默认在中间,偏移量相对于中间偏移y- 修正值。 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressImage
给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源pressImg- 水印图片,可以使用ImageIO.read(File)方法读取文件x- 修正值。 默认在中间,偏移量相对于中间偏移y- 修正值。 默认在中间,偏移量相对于中间偏移alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 结果图片
-
pressImage
给图片添加图片水印 此方法并不关闭流- Parameters:
srcImage- 源图像流,使用结束后需手动调用flush(Image)释放资源pressImg- 水印图片,可以使用ImageIO.read(File)方法读取文件rectangle- 矩形对象,表示矩形区域的x,y,width,height,x,y从背景图片中心计算alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 结果图片
-
pressImageFull
public static void pressImageFull(File imageFile, File destFile, File pressImageFile, int lineHeight, int degree, float alpha) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加全屏图片水印- Parameters:
imageFile- 源图像文件destFile- 目标图像文件pressImageFile- 水印图像文件lineHeight- 行高degree- 水印图像旋转角度,(单位:弧度),以圆点(0,0)为圆心,正代表顺时针,负代表逆时针alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressImageFull
public static void pressImageFull(InputStream srcStream, OutputStream targetStream, InputStream pressStream, int lineHeight, int degree, float alpha) throws org.miaixz.bus.core.lang.exception.InternalException 给图片添加全屏图像水印,写出格式为JPG 此方法并不关闭流- Parameters:
srcStream- 源图像流targetStream- 目标图像流pressStream- 水印图像流lineHeight- 行高degree- 水印图像旋转角度,(单位:弧度),以圆点(0,0)为圆心,正代表顺时针,负代表逆时针alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
pressImageFull
public static Image pressImageFull(Image srcImage, Image pressImage, int lineHeight, int degree, float alpha) 给图片添加全屏图像水印 此方法并不关闭流- Parameters:
srcImage- 源图像,使用结束后需手动调用flush(Image)释放资源pressImage- 水印图像,使用结束后需手动调用flush(Image)释放资源lineHeight- 行高degree- 水印图像旋转角度,(单位:弧度),以圆点(0,0)为圆心,正代表顺时针,负代表逆时针,(单位:弧度),以圆点(0,0)为圆心,正代表顺时针,负代表逆时针alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 处理后的图像
-
rotate
public static void rotate(File imageFile, int degree, File outFile) throws org.miaixz.bus.core.lang.exception.InternalException 旋转图片为指定角度 此方法不会关闭输出流- Parameters:
imageFile- 被旋转图像文件degree- 旋转角度outFile- 输出文件- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
rotate
public static void rotate(Image image, int degree, File outFile) throws org.miaixz.bus.core.lang.exception.InternalException 旋转图片为指定角度 此方法不会关闭输出流- Parameters:
image- 需要旋转的图像,使用结束后需手动调用flush(Image)释放资源degree- 旋转角度outFile- 输出文件- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
rotate
public static void rotate(Image image, int degree, OutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 旋转图片为指定角度 此方法不会关闭输出流- Parameters:
image- 需要旋转的图像,使用结束后需手动调用flush(Image)释放资源degree- 旋转角度out- 输出流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
rotate
public static void rotate(Image image, int degree, ImageOutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 旋转图片为指定角度 此方法不会关闭输出流,输出格式为JPG- Parameters:
image- 需要旋转的图像,使用结束后需手动调用flush(Image)释放资源degree- 旋转角度out- 输出图像流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
rotate
旋转图片为指定角度 来自:http://blog.51cto.com/cping1982/130066- Parameters:
image- 需要旋转的图像,使用结束后需手动调用flush(Image)释放资源degree- 旋转角度- Returns:
- 旋转后的图片
-
flip
public static void flip(File imageFile, File outFile) throws org.miaixz.bus.core.lang.exception.InternalException 水平翻转图像- Parameters:
imageFile- 图像文件outFile- 输出文件- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
flip
public static void flip(Image image, File outFile) throws org.miaixz.bus.core.lang.exception.InternalException 水平翻转图像- Parameters:
image- 图像,使用结束后需手动调用flush(Image)释放资源outFile- 输出文件- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
flip
public static void flip(Image image, OutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 水平翻转图像- Parameters:
image- 图像,使用结束后需手动调用flush(Image)释放资源out- 输出- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
flip
public static void flip(Image image, ImageOutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 水平翻转图像,写出格式为JPG- Parameters:
image- 图像,使用结束后需手动调用flush(Image)释放资源out- 输出- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
flip
水平翻转图像- Parameters:
image- 图像,使用结束后需手动调用flush(Image)释放资源- Returns:
- 翻转后的图片
-
compress
public static void compress(File imageFile, File outFile, float quality) throws org.miaixz.bus.core.lang.exception.InternalException 压缩图像,输出图像只支持jpg文件- Parameters:
imageFile- 图像文件outFile- 输出文件,只支持jpg文件quality- 压缩比例,必须为0~1- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
castToRenderedImage
- Parameters:
img-ImageimageType- 目标图片类型,例如jpg或png等- Returns:
BufferedImage
-
castToBufferedImage
- Parameters:
img-ImageimageType- 目标图片类型,例如jpg或png等- 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模式与目标模式一致,则直接转换,否则重新绘制 默认的,png图片使用BufferedImage.TYPE_INT_ARGB模式,其它使用BufferedImage.TYPE_INT_RGB模式- Parameters:
image-ImageimageType- 目标图片类型,例如jpg或png等backgroundColor- 背景色Color,null表示默认背景色(黑色或者透明)- Returns:
BufferedImage
-
toBufferedImage
Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制- Parameters:
image-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等- Returns:
BufferedImage
-
toBufferedImage
Image转BufferedImage如果源图片的RGB模式与目标模式一致,则直接转换,否则重新绘制- Parameters:
image-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等backgroundColor- 背景色Color,null表示默认背景色(黑色或者透明)- Returns:
BufferedImage
-
copyImage
将已有Image复制新的一份出来- Parameters:
img-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等- Returns:
BufferedImage- See Also:
-
copyImage
将已有Image复制新的一份出来- Parameters:
img-ImageimageType- 目标图片类型,BufferedImage中的常量,例如黑白等backgroundColor- 背景色,null表示默认背景色(黑色或者透明)- Returns:
BufferedImage- See Also:
-
toImage
public static BufferedImage toImage(String base64) throws org.miaixz.bus.core.lang.exception.InternalException 将Base64编码的图像信息转为BufferedImage- Parameters:
base64- 图像的Base64表示- Returns:
BufferedImage- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
toImage
public static BufferedImage toImage(byte[] imageBytes) throws org.miaixz.bus.core.lang.exception.InternalException 将的图像bytes转为BufferedImage- Parameters:
imageBytes- 图像bytes- Returns:
BufferedImage- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
toStream
将图片对象转换为InputStream形式- Parameters:
image- 图片对象imageType- 图片类型- Returns:
- Base64的字符串表现形式
-
toBase64DataUri
将图片对象转换为Base64的Data URI形式,格式为:data:image/[imageType];base64,[data]- Parameters:
image- 图片对象imageType- 图片类型- Returns:
- Base64的字符串表现形式
-
toBase64
将图片对象转换为Base64形式- Parameters:
image- 图片对象imageType- 图片类型- Returns:
- Base64的字符串表现形式
-
toBytes
将图片对象转换为bytes形式- Parameters:
image- 图片对象imageType- 图片类型- Returns:
- Base64的字符串表现形式
-
createCompatibleImage
创建与当前设备颜色模式兼容的BufferedImage- Parameters:
width- 宽度height- 高度transparency- 透明模式,见Transparency- Returns:
BufferedImage
-
createTransparentImage
public static void createTransparentImage(String text, Font font, Color fontColor, ImageOutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 根据文字创建透明背景的PNG图片- Parameters:
text- 文字font- 字体FontfontColor- 字体颜色,默认黑色out- 图片输出地- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
createImage
public static void createImage(String text, Font font, Color backgroundColor, Color fontColor, ImageOutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 根据文字创建PNG图片- Parameters:
text- 文字font- 字体FontbackgroundColor- 背景颜色,默认透明fontColor- 字体颜色,默认黑色out- 图片输出地- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
createImage
public static BufferedImage createImage(String text, Font font, Color backgroundColor, Color fontColor, int imageType) throws org.miaixz.bus.core.lang.exception.InternalException 根据文字创建图片- Parameters:
text- 文字font- 字体FontbackgroundColor- 背景颜色,默认透明fontColor- 字体颜色,默认黑色imageType- 图片类型,见:BufferedImage- Returns:
- 图片
- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
writeJpg
public static void writeJpg(Image image, ImageOutputStream targetImageStream) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为JPG格式- Parameters:
image-ImagetargetImageStream- 写出到的目标流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
writePng
public static void writePng(Image image, ImageOutputStream targetImageStream) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为PNG格式- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源targetImageStream- 写出到的目标流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
writeJpg
public static void writeJpg(Image image, OutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为JPG格式- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源out- 写出到的目标流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
writePng
public static void writePng(Image image, OutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为PNG格式- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源out- 写出到的目标流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
write
public static void write(ImageInputStream srcStream, String formatName, ImageOutputStream targetStream) 按照目标格式写出图像:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流- Parameters:
srcStream- 源图像流formatName- 包含格式非正式名称的 String:如JPG、JPEG、GIF等targetStream- 目标图像输出流
-
write
public static void write(Image image, String imageType, OutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源imageType- 图片类型(图片扩展名)out- 写出到的目标流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
write
public static void write(Image image, File destFile) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为目标文件扩展名对应的格式- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源destFile- 目标文件- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
write
public static void write(Image image, String imageType, ImageOutputStream targetImageStream) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为指定格式:GIF=JPG、GIF=PNG、PNG=JPG、PNG=GIF(X)、BMP=PNG 此方法并不关闭流- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源imageType- 图片类型(图片扩展名)targetImageStream- 写出到的目标流- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
write
public static void write(Image image, String imageType, ImageOutputStream out, float quality, Color backgroundColor) throws org.miaixz.bus.core.lang.exception.InternalException 写出图像为指定格式- Parameters:
image-Image,使用结束后需手动调用flush(Image)释放资源imageType- 图片类型(图片扩展名),null表示使用RGB模式(JPG)out- 写出到的目标流quality- 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩backgroundColor- 背景色Color- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
write
通过ImageWriter写出图片到输出流- Parameters:
image- 图片,使用结束后需手动调用flush(Image)释放资源imageType- 图片类型output- 输出的Image流ImageOutputStreamquality- 质量,数字为0~1(不包括0和1)表示质量压缩比,除此数字外设置表示不压缩
-
getWriter
根据给定的Image对象和格式获取对应的ImageWriter,如果未找到合适的Writer,返回null- Parameters:
img-Image,使用结束后需手动调用flush(Image)释放资源formatName- 图片格式,例如"jpg"、"png",null则使用默认值"jpg"- Returns:
ImageWriter
-
getWriter
根据给定的图片格式或者扩展名获取ImageWriter,如果未找到合适的Writer,返回null- Parameters:
formatName- 图片格式或扩展名,例如"jpg"、"png",null则使用默认值"jpg"- Returns:
ImageWriter
-
read
从文件中读取图片,请使用绝对路径,使用相对路径会相对于ClassPath- Parameters:
imageFilePath- 图片文件路径- Returns:
- 图片
-
read
从文件中读取图片- Parameters:
imageFile- 图片文件- Returns:
- 图片
-
read
从Resource中读取图片- Parameters:
resource- 图片资源- Returns:
- 图片
-
read
从流中读取图片- Parameters:
imageStream- 图片文件- Returns:
- 图片
-
read
从图片流中读取图片- Parameters:
imageStream- 图片文件- Returns:
- 图片
-
read
从URL中读取图片- Parameters:
imageUrl- 图片文件- Returns:
- 图片
-
getReader
- Parameters:
type- 图片文件类型,例如 "jpeg" 或 "tiff"- Returns:
ImageReader
-
getWidthAndHeight
public static org.miaixz.bus.core.lang.tuple.Pair<Integer,Integer> getWidthAndHeight(InputStream imageStream, String type) 通过ImageInputStream获取对应类型的宽和高- Parameters:
imageStream-ImageInputStreamtype- 图片类型- Returns:
- 宽和高
-
getWidthAndHeight
public static org.miaixz.bus.core.lang.tuple.Pair<Integer,Integer> getWidthAndHeight(ImageInputStream imageStream, String type) 通过ImageInputStream获取对应类型的宽和高- Parameters:
imageStream-ImageInputStreamtype- 图片类型- Returns:
- 宽和高
-
getImage
从URL中获取或读取图片对象- Parameters:
url- URL- Returns:
Image
-
getImageOutputStream
public static ImageOutputStream getImageOutputStream(OutputStream out) throws org.miaixz.bus.core.lang.exception.InternalException - Parameters:
out-OutputStream- Returns:
ImageOutputStream- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
getImageOutputStream
public static ImageOutputStream getImageOutputStream(File outFile) throws org.miaixz.bus.core.lang.exception.InternalException - Parameters:
outFile-File- Returns:
ImageOutputStream- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
getImageInputStream
public static ImageInputStream getImageInputStream(InputStream in) throws org.miaixz.bus.core.lang.exception.InternalException - Parameters:
in-InputStream- Returns:
ImageInputStream- Throws:
org.miaixz.bus.core.lang.exception.InternalException- IO异常
-
getPointBaseCentre
public static Point getPointBaseCentre(Rectangle rectangle, int backgroundWidth, int backgroundHeight) 获得修正后的矩形坐标位置,变为以背景中心为基准坐标(即x,y == 0,0时,处于背景正中)- Parameters:
rectangle- 矩形backgroundWidth- 参考宽(背景宽)backgroundHeight- 参考高(背景高)- Returns:
- 修正后的
Point
-
backgroundRemoval
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
inputPath- 要处理图片的路径outputPath- 输出图片的路径tolerance- 容差值[根据图片的主题色,加入容差值,值的范围在0~255之间]
-
backgroundRemoval
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
input- 需要进行操作的图片output- 最后输出的文件tolerance- 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]
-
backgroundRemoval
背景移除 图片去底工具 将 "纯色背景的图片" 还原成 "透明背景的图片" 将纯色背景的图片转成矢量图 取图片边缘的像素点和获取到的图片主题色作为要替换的背景色 再加入一定的容差值,然后将所有像素点与该颜色进行比较 发现相同则将颜色不透明度设置为0,使颜色完全透明.- Parameters:
input- 需要进行操作的图片output- 最后输出的文件override- 指定替换成的背景颜色 为null时背景为透明tolerance- 容差值[根据图片的主题色,加入容差值,值的取值范围在0~255之间]
-
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
图片颜色转换 可以使用灰度 (gray)等- Parameters:
colorSpace- 颜色模式,如灰度等image- 被转换的图片- Returns:
- 转换后的图片
-
transform
转换图片 可以使用一系列平移 (translation)、缩放 (scale)、翻转 (flip)、旋转 (rotation) 和错切 (shear) 来构造仿射变换。- Parameters:
xform- 2D仿射变换,它执行从 2D 坐标到其他 2D 坐标的线性映射,保留了线的“直线性”和“平行性”。image- 被转换的图片- Returns:
- 转换后的图片
-
filter
图片过滤转换- Parameters:
op- 过滤操作实现,如二维转换可传入AffineTransformOpimage- 原始图片- Returns:
- 过滤后的图片
-
filter
图片滤镜,借助ImageFilter实现,实现不同的图片滤镜- Parameters:
filter- 滤镜实现image- 图片- Returns:
- 滤镜后的图片
-
flush
刷新和释放Image资源- Parameters:
image-Image
-
createGraphics
- Parameters:
image-BufferedImagecolor-Color背景颜色以及当前画笔颜色,null表示不设置背景色- Returns:
Graphics2D
-
getCenterY
获取文字居中高度的Y坐标(距离上边距距离) 此方法依赖FontMetrics,如果获取失败,默认为背景高度的1/3- Parameters:
g-Graphics2D画笔backgroundHeight- 背景高度- Returns:
- 最小高度,-1表示无法获取
-
drawStringColourful
public static Graphics drawStringColourful(Graphics g, String text, Font font, int width, int height) 绘制字符串,使用随机颜色,默认抗锯齿 -
drawStringColourful
public static Graphics drawStringColourful(Graphics g, String str, Font font, int width, int height, Color compareColor, int minColorDistance) 绘制字符串,使用随机颜色,默认抗锯齿 -
drawString
public static Graphics drawString(Graphics g, String text, Font font, Color color, int width, int height) 绘制字符串,默认抗锯齿 -
drawString
public static Graphics drawString(Graphics g, String text, Font font, Color color, Rectangle rectangle) 绘制字符串,默认抗锯齿。 此方法定义一个矩形区域和坐标,文字基于这个区域中间偏移x,y绘制。 -
drawString
绘制字符串,默认抗锯齿 -
drawImg
绘制图片- Parameters:
g- 画笔img- 要绘制的图片point- 绘制的位置,基于左上角- Returns:
Graphics
-
drawImg
绘制图片- Parameters:
g- 画笔img- 要绘制的图片rectangle- 矩形对象,表示矩形区域的x,y,width,height,,基于左上角- Returns:
- 画笔对象
-
setAlpha
设置画笔透明度- Parameters:
g- 画笔alpha- 透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字- Returns:
- 画笔
-
getAllFonts
获得系统中支持的所有字体- Returns:
- 字体数组
-
createFont
创建默认字体- Returns:
- 默认字体
-
createSansSerifFont
创建SansSerif字体- Parameters:
size- 字体大小- Returns:
- 字体
-
createFont
创建指定名称的字体- Parameters:
name- 字体名称size- 字体大小- Returns:
- 字体
-
createFont
根据文件创建字体 首先尝试创建Font.TRUETYPE_FONT字体,此类字体无效则创建Font.TYPE1_FONT- Parameters:
fontFile- 字体文件- Returns:
Font
-
createFont
根据文件创建字体 首先尝试创建Font.TRUETYPE_FONT字体,此类字体无效则创建Font.TYPE1_FONT- Parameters:
fontStream- 字体流- Returns:
Font
-
getDimension
获得字体对应字符串的长宽信息- Parameters:
metrics-FontMetricstext- 字符串- Returns:
- 长宽信息
-
getRectangle
获取font的样式应用在str上的整个矩形- Parameters:
text- 字符串,必须非空font- 字体,必须非空- Returns:
Rectangle2D
-