zhyiwww
用平实的笔,记录编程路上的点点滴滴………
posts - 536,comments - 394,trackbacks - 0

Java 如何截取图片  

Author      :      zhyiwww

E-Mail       :      zhyiwww@163.com

Date           :      2007-1-30

转载请注明出处 www.BlogJava.net/zhyiwww

                                (copyright by @ zhangyi)  

下面是我的一段代码,实现如何截取图片的:

         // 图片源

       private static final String SRC_FILE="org//zy//demo//jdk//base//image//car1.jpg";

      // 目标图片

       private static final String DEST_FILE="c://a.jpg";

 

/**

        * 读取图像文件

        * ImageReader

        * @param imgPath

        * @throws IOException

        */

       public void readUsingImageReader(String imgPath) throws IOException{

             

              // 取得图片读入器

              Iterator readers = ImageIO.getImageReadersByFormatName("jpg");

              System.out.println(readers);

              ImageReader reader = (ImageReader)readers.next();

              System.out.println(reader);

             

              // 取得图片读入流

              InputStream source=this.parseImagePath(ImageDemo.SRC_FILE);

              ImageInputStream iis = ImageIO.createImageInputStream(source);

             

              reader.setInput(iis, true);

             

              // 图片参数

             

              ImageReadParam param = reader.getDefaultReadParam();

              int imageIndex = 0;

              int half_width = reader.getWidth(imageIndex)/2;

              int half_height = reader.getHeight(imageIndex)/2;

//            Rectangle rect = new Rectangle(60, 60, half_width, half_height);

              Rectangle rect = new Rectangle(60, 60, 100, 100);

             

              param.setSourceRegion(rect);

      

              BufferedImage bi = reader.read(0,param);             

             

              ImageIO.write(bi, "jpg", this.initDestFile());          

             

       }

 

我的源图片是:

img0.jpg

 

上面的程序运行后截得的图片如下:

img1.jpg

 



|----------------------------------------------------------------------------------------|
                           版权声明  版权所有 @zhyiwww
            引用请注明来源 http://www.blogjava.net/zhyiwww   
|----------------------------------------------------------------------------------------|
posted on 2007-01-30 17:41 zhyiwww 阅读(10870) 评论(7)  编辑  收藏 所属分类: java basic

FeedBack:
# re: Java中实现图片裁剪
2007-01-30 17:46 | 交口称赞
我写连连看的时候是直接指定把一张图片的某部分画到缓冲区的某部分  回复  更多评论
  
# re: Java中实现图片裁剪
2007-01-30 17:47 | 交口称赞
gcBasic.drawImage(img_fk_base, 70 + j * 35, i * 40 + 35);
  回复  更多评论
  
# re: Java中实现图片裁剪
2007-02-06 18:42 | BeanSoft
不错, 可以实现大图做数据源的 map 服务器端, 当然不需要地理信息的那种示意图了.  回复  更多评论
  
# re: Java中实现图片裁剪
2008-10-22 09:59 | 地方官sdfsdf
@交口称赞
个@交口称赞
@交口称赞
@交口称赞
  回复  更多评论
  
# re: Java中实现图片裁剪
2008-10-23 20:04 | vvd
# re: Java中实现图片裁剪
2009-03-25 16:31 | goodsu
parseImagePath
initDestFile
这两个方面也一块放上吧?嘻嘻  回复  更多评论
  
# re: Java中实现图片裁剪
2009-03-25 16:32 | goodsu
@goodsu
写错了,是这两个方法  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: