zoukankan      html  css  js  c++  java
  • 图片截取(裁剪)

        public static void cutImage(File file) {
            String fileName = file.getPath();
            String lastName = fileName.substring(fileName.lastIndexOf(".") + 1,fileName.length());
            FileInputStream fis = null;
            ImageInputStream iis = null;
            try {
                /**读取图片*/
                Iterator<ImageReader> it = ImageIO.getImageReadersByFormatName(lastName);
                ImageReader reader = it.next();
                /**获取图片流*/
                fis = new FileInputStream(file);
                iis = ImageIO.createImageInputStream(fis);
                reader.setInput(iis, true);

                ImageReadParam param = reader.getDefaultReadParam();
                BufferedImage image = null;
                image = ImageIO.read(file);
                int width = image.getWidth();
                int height = image.getHeight();
                Rectangle rect;
                if (300 < height) {
                    rect = new Rectangle(0, 0, width, height-50);
                } else {
                    rect = new Rectangle(0, 0, width, height);
                }
                param.setSourceRegion(rect);
                BufferedImage bi = reader.read(0, param);

                ImageIO.write(bi, lastName, file);
            } catch (Exception ex) {
                ex.printStackTrace();
            } finally {
                try {
                    if (fis != null) {
                        fis.close();
                    }
                    if (iis != null) {
                        iis.close();
                    }
                } catch (Exception ex) {
                    ex.printStackTrace();
                }
            }
        }

  • 相关阅读:
    《构建之法》读后感 二
    求数组最大子数组的和(循环数组)
    求数组最大子数组的和
    《构造之法》阅读笔记一
    2019春季学期学习进度报告(一)
    软件工程开课博客
    个人NABCD
    《构建之法》阅读笔记02
    大二下学期学习进度(六)
    《构建之法》阅读笔记01
  • 原文地址:https://www.cnblogs.com/sand-tiny/p/3582794.html
Copyright © 2011-2022 走看看