<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    甜咖啡

    我的IT空間

    前臺(tái)用javaScript,后臺(tái)用java裁剪圖片

    總體思想:

    1.前臺(tái)網(wǎng)頁用js得到裁剪圖片的id及x,y,寬度和高度。

    2.服務(wù)端根據(jù)id取出要裁剪的圖片 。

    3.根據(jù)這些參數(shù)來生成裁剪的圖像。

    后臺(tái)代碼如下:

    package com.wodexiangce;

    import java.awt.Rectangle;

    import java.awt.image.BufferedImage;

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.IOException;

    import java.util.Iterator;

    import javax.imageio.ImageIO;

    import javax.imageio.ImageReadParam;

    import javax.imageio.ImageReader;

    import javax.imageio.stream.ImageInputStream;

    /** *//**

    *

    *

    * @author <a href="mailto:lqinglong@yahoo.cn">qinglong.lu</a>

    *

    * 2008-3-21

    */

    public class OperateImage ...{

          

        //===源圖片路徑名稱如:c:/1.jpg

        private String srcpath ;

            

        //===剪切圖片存放路徑名稱.如:c:/2.jpg

        private String subpath ;

       

        //===剪切點(diǎn)x坐標(biāo)

        private int x ;

       

        private int y ;   

         

        //===剪切點(diǎn)寬度

        private int width ;

        

        private int height ;

       

        public OperateImage()...{

               

        } 

        public OperateImage(int x,int y,int width,int height)...{

             this.x = x ;

             this.y = y ;

             this.width = width ;  

             this.height = height ;

        }

       

        /** *//**

         * 對(duì)圖片裁剪,并把裁剪完蛋新圖片保存 。

         */

        public void cut() throws IOException...{

            

            FileInputStream is = null ;

            ImageInputStream iis =null ;

        

            try...{  

                //讀取圖片文件

                is = new FileInputStream(srcpath);

               

                /**//*

                 * 返回包含所有當(dāng)前已注冊(cè) ImageReader 的 Iterator,這些 ImageReader

                 * 聲稱能夠解碼指定格式。 參數(shù):formatName - 包含非正式格式名稱 .

                 *(例如 "jpeg" 或 "tiff")等 。

                 */

                Iterator<ImageReader> it = ImageIO.getImageReadersByFormatName("jpg"); 

                ImageReader reader = it.next();

                //獲取圖片流

                iis = ImageIO.createImageInputStream(is);

                  

                /**//*

                 * <p>iis:讀取源.true:只向前搜索 </p>.將它標(biāo)記為 ‘只向前搜索’。

                 * 此設(shè)置意味著包含在輸入源中的圖像將只按順序讀取,可能允許 reader

                 *  避免緩存包含與以前已經(jīng)讀取的圖像關(guān)聯(lián)的數(shù)據(jù)的那些輸入部分。

                 */

                reader.setInput(iis,true) ;

               

                /**//*

                 * <p>描述如何對(duì)流進(jìn)行解碼的類<p>.用于指定如何在輸入時(shí)從 Java Image I/O

                 * 框架的上下文中的流轉(zhuǎn)換一幅圖像或一組圖像。用于特定圖像格式的插件

                 * 將從其 ImageReader 實(shí)現(xiàn)的 getDefaultReadParam 方法中返回

                 * ImageReadParam 的實(shí)例。 

                 */

                ImageReadParam param = reader.getDefaultReadParam();

                

                /**//*

                 * 圖片裁剪區(qū)域。Rectangle 指定了坐標(biāo)空間中的一個(gè)區(qū)域,通過 Rectangle 對(duì)象

                 * 的左上頂點(diǎn)的坐標(biāo)(x,y)、寬度和高度可以定義這個(gè)區(qū)域。

                 */

                Rectangle rect = new Rectangle(x, y, width, height);

               

                 

                //提供一個(gè) BufferedImage,將其用作解碼像素?cái)?shù)據(jù)的目標(biāo)。

                param.setSourceRegion(rect);

                /**//*

                 * 使用所提供的 ImageReadParam 讀取通過索引 imageIndex 指定的對(duì)象,并將

                 * 它作為一個(gè)完整的 BufferedImage 返回。

                 */

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

         

                //保存新圖片

                ImageIO.write(bi, "jpg", new File(subpath));    

            }

           

            finally...{

                if(is!=null)

                   is.close() ;      

                if(iis!=null)

                   iis.close(); 

            }

           

            

        

        }

        public int getHeight() ...{

            return height;

        }

        public void setHeight(int height) ...{

            this.height = height;

        }

        public String getSrcpath() ...{

            return srcpath;

        }

        public void setSrcpath(String srcpath) ...{

            this.srcpath = srcpath;

        }

        public String getSubpath() ...{

            return subpath;

        }

        public void setSubpath(String subpath) ...{

            this.subpath = subpath;

        }

        public int getWidth() ...{

            return width;

        }

        public void setWidth(int width) ...{

            this.width = width;

        }

        public int getX() ...{

            return x;

        }

        public void setX(int x) ...{

            this.x = x;

        }

        public int getY() ...{

            return y;

        }

        public void setY(int y) ...{

            this.y = y;

        }

        public static void main(String[] args)throws Exception...{

           

            String name = "d:/2005121210161588950.jpg";

           

            OperateImage o = new OperateImage(100,100,100,100);

            o.setSrcpath(name); 

            o.setSubpath("D:/2.jpg");

            o.cut() ; 

             

        }

    }

    posted on 2011-08-02 18:43 甜咖啡 閱讀(732) 評(píng)論(0)  編輯  收藏


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     

    導(dǎo)航

    <2011年8月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統(tǒng)計(jì)

    常用鏈接

    留言簿(1)

    我參與的團(tuán)隊(duì)

    隨筆檔案

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 国产一精品一aⅴ一免费| 亚洲精品无码MV在线观看| 香蕉视频免费在线播放| 国产综合精品久久亚洲| 日韩午夜理论免费TV影院 | 亚洲精品国产手机| 国产亚洲婷婷香蕉久久精品 | 国产99在线|亚洲| 亚洲精品乱码久久久久久蜜桃| 免费a级毛片无码a∨免费软件| 亚洲国产精品线观看不卡| 国产在线不卡免费播放| 久9久9精品免费观看| 亚洲av色香蕉一区二区三区| 亚洲爆乳无码专区| 国产片免费福利片永久| 全部免费毛片在线播放| 特级毛片全部免费播放a一级| 精品日韩亚洲AV无码| 亚洲成网777777国产精品| 亚洲精品免费在线视频| 麻豆亚洲AV永久无码精品久久| 国产精品自在自线免费观看| 99久久精品免费精品国产| 又黄又大的激情视频在线观看免费视频社区在线 | 中文字幕专区在线亚洲| 无码高潮少妇毛多水多水免费| 三年片免费高清版 | 亚洲欧美国产国产一区二区三区 | 95老司机免费福利| 一级**爱片免费视频| 亚洲国产另类久久久精品黑人 | 搜日本一区二区三区免费高清视频| 亚洲精品网站在线观看你懂的| 伊人亚洲综合青草青草久热| 免费黄色app网站| 日韩亚洲国产高清免费视频| 精品四虎免费观看国产高清午夜| 美美女高清毛片视频黄的一免费| 亚洲人成毛片线播放| 亚洲第一中文字幕|