All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.opslab.util.image.ImageUtil Maven / Gradle / Ivy

package com.opslab.util.image;

import java.awt.*;
import java.awt.image.BufferedImage;

/**
 * 图片相关的操作类
 */
public class ImageUtil {

    /**
     * 重新设定图像的长高宽
     * @param originalImage 图像数据
     * @param width 宽
     * @param height 高
     * @return
     */
    public static BufferedImage imageResize(BufferedImage originalImage, Integer width,Integer height){
        if(width <= 0){
            width =1;
        }
        if(height <= 0){
            height =1;
        }
        BufferedImage newImage = new BufferedImage(width,height,originalImage.getType());
        Graphics g = newImage.getGraphics();
        g.drawImage(originalImage,0,0,width,height,null);
        g.dispose();
        return newImage;
    }

    /**
     * 按照给点的比例放大图像
     * 当缩减比例小于等于0时不发生任何变化
     * @param originalImage 图像数据
     * @param withdRatio 宽度缩减比例
     * @param heightRatio 高度缩减比例
     * @return 图像数据
     */
    public static BufferedImage imageMagnifyRatio(BufferedImage originalImage, Integer withdRatio,Integer heightRatio){
        if(withdRatio <= 0){
            withdRatio =1;
        }
        if(heightRatio <= 0){
            heightRatio =1;
        }
        int width = originalImage.getWidth()*withdRatio;
        int height = originalImage.getHeight()*heightRatio;
        BufferedImage newImage = new BufferedImage(width,height,originalImage.getType());
        Graphics g = newImage.getGraphics();
        g.drawImage(originalImage,0,0,width,height,null);
        g.dispose();
        return newImage;
    }
    /**
     * 按照给点的比例缩小图像
     * 当缩减比例小于等于0时不发生任何变化
     * @param originalImage 图像数据
     * @param withdRatio 宽度缩减比例
     * @param heightRatio 高度缩减比例
     * @return 图像数据
     */
    public static BufferedImage imageShrinkRatio(BufferedImage originalImage, Integer withdRatio,Integer heightRatio){
        if(withdRatio <= 0){
            withdRatio =1;
        }
        if(heightRatio <= 0){
            heightRatio =1;
        }
        int width = originalImage.getWidth()/withdRatio;
        int height = originalImage.getHeight()/heightRatio;
        BufferedImage newImage = new BufferedImage(width,height,originalImage.getType());
        Graphics g = newImage.getGraphics();
        g.drawImage(originalImage,0,0,width,height,null);
        g.dispose();
        return newImage;
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy