JAVA用ImageIO处理JPG图片

    Image srcImage = ImageIO.read(srcFile);
        
        // 原始图片大小
        int srcImageWidth = srcImage.getWidth(null);
        int srcImageHeight = srcImage.getHeight(null);
        
           // 计算图片缩放后的大小
            if (srcImageWidth >= srcImageHeight) {
                newHeight = (int) Math.round((srcImageHeight * newWidth * 1.0 / srcImageWidth));
            } else {
                newWidth = (int) Math.round((srcImageWidth * newHeight * 1.0 / srcImageHeight));
            }
        
        BufferedImage distImage = new BufferedImage(newWidth, newHeight, BufferedImage.TYPE_INT_RGB);
        
        // 缩放图片

 distImage.getGraphics().drawImage(srcImage.getScaledInstance(newWidth, newWidth, Image.SCALE_SMOOTH), 0, 0, null);
        
        // 输出
        OutputStream os = null;
        try {
            os = new FileOutputStream(destFile);
            ImageIO.write(distImage, "JPG", os);
            os.flush();
        } finally {
            os.close();
        }

你可能感兴趣的:(image)