zoukankan      html  css  js  c++  java
  • java裁剪图片

    java裁剪图片保存到指定位置

    /**
         * 图片裁剪通用接口
         *
         * @param src  源图片地址,图片格式PNG
         * @param dest 目的图片地址
         * @param x    图片起始点x坐标
         * @param y    图片起始点y坐标
         * @param w    图片宽度
         * @param h    图片高度
         * @throws IOException 异常处理
         */
        public void cutImage(String src, String dest, int x, int y, int w, int h)  {
            try{
                //获取png图片的ImageReader的Iterator
                Iterator iterator = ImageIO.getImageReadersByFormatName("png");
                //根据Iterator获取ImageReader
                ImageReader reader = (ImageReader) iterator.next();
                //获取源图片输入流
                InputStream in = new FileInputStream(src);
                //根据源图片输入流获得ImageInputStream流
                ImageInputStream iis = ImageIO.createImageInputStream(in);
                //将ImageInputStream流加载到ImageReader中
                reader.setInput(iis, true);
                //图片读取参数
                ImageReadParam param = reader.getDefaultReadParam();
                Rectangle rect = new Rectangle(x, y, w, h);
                //参数对象设置形状为一定大小的长方形
                param.setSourceRegion(rect);
                //ImageReader根据参数对象获得BufferedImage 
                BufferedImage bi = reader.read(0, param);
                //将经过参数对象筛选的图片流写入目标文件中
                ImageIO.write(bi, "png", new File(dest));
            }catch (IOException e){
                System.err.println("裁剪图片失败");
            }
    
    
        }

    源码

  • 相关阅读:
    4. Qt的容器类
    hdu 4507 数位dp(求和,求平方和)
    MVC3和MVC4中CRUD操作
    SSL 中证书能否够使用IP而不是域名
    TinyXml快速入门(一)
    C++ TinyXml操作(含源码下载)
    Tinyxml 操作XML
    msxml 操作xml
    MFC中全局变量的定义及使用
    VC++中操作XMLWin32实例
  • 原文地址:https://www.cnblogs.com/aeolian/p/8288788.html
Copyright © 2011-2022 走看看