Java中实现图片裁剪

Java 如何截取图片 <o:p> 
</o:p>

Author      :      zhyiwww<o:p>

E-Mail       :      [email protected]<o:p>

Date           :      2007-1-30<o:p>

转载请注明出处 www.BlogJava.net/zhyiwww<o:p>

                                (copyright by @ zhangyi) <o:p> 
</o:p>

下面是我的一段代码,实现如何截取图片的: <o:p> </o:p>

<o:p> </o:p>        // 图片源 <o:p> </o:p>

       private static final String SRC_FILE="org//zy//demo//jdk//base//image//car1.jpg";<o:p>

      // 目标图片 <o:p> </o:p>

       private static final String DEST_FILE="c://a.jpg";<o:p>

<o:p> </o:p>

/**<o:p>

        * 读取图像文件 <o:p> </o:p>

        * ImageReader<o:p>

        * @param imgPath<o:p>

        * @throws IOException <o:p>

        */<o:p>

       public void readUsingImageReader(String imgPath) throws IOException{<o:p>

              <o:p> </o:p>

              // 取得图片读入器 <o:p> </o:p>

              Iterator readers = ImageIO.getImageReadersByFormatName("jpg");<o:p>

              System.out.println(readers);<o:p>

              ImageReader reader = (ImageReader)readers.next();<o:p>

              System.out.println(reader);<o:p>

              <o:p> </o:p>

              // 取得图片读入流 <o:p> </o:p>

              InputStream source=this.parseImagePath(ImageDemo.SRC_FILE);<o:p>

              ImageInputStream iis = ImageIO.createImageInputStream(source);<o:p>

              <o:p> </o:p>

              reader.setInput(iis, true);<o:p>

              <o:p> </o:p>

              // 图片参数 <o:p> </o:p>

              <o:p> </o:p>

              ImageReadParam param = reader.getDefaultReadParam();<o:p>

              int imageIndex = 0;<o:p>

              int half_width = reader.getWidth(imageIndex)/2;<o:p>

              int half_height = reader.getHeight(imageIndex)/2;<o:p>

//            Rectangle rect = new Rectangle(60, 60, half_width, half_height); <o:p>

              Rectangle rect = new Rectangle(60, 60, 100, 100);<o:p>

              <o:p> </o:p>

              param.setSourceRegion(rect);<o:p>

       <o:p> </o:p>

              BufferedImage bi = reader.read(0,param);              <o:p>

              <o:p> </o:p>

              ImageIO.write(bi, "jpg", this.initDestFile());           <o:p>

              <o:p> </o:p>

       }<o:p>

<o:p> </o:p>

我的源图片是: <o:p> </o:p>

<!----> <!----> Java中实现图片裁剪_第1张图片
<!----> <o:p> </o:p>

<o:p> </o:p>

上面的程序运行后截得的图片如下: <o:p> </o:p>

<!----> <!----> Java中实现图片裁剪_第2张图片
<!----> <o:p> </o:p>

<o:p> </o:p>



zhyiwww 2007-01-30 17:41 发表评论

你可能感兴趣的:(java,jdk,.net,IIS)