亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? openimage.java

?? jpeg2000編解碼
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
     * Display the Image instance in a panel (JJImgPanel). Then it inserts     * the panel in an internal frame      * */    private void displayImage(String info, boolean isTemporaryFile) {        if(image==null) return; // No image has been created        // +---------------------------------+        // | Display Image in internal frame |        // +---------------------------------+        mainFrame.setCursor(Cursor.WAIT_CURSOR);        JInternalFrame f = new JInternalFrame("",true,true,true,true);        // Set preferred size for using scroll-bars appropriately        JJImgPanel imgPanel = 	    new JJImgPanel(image,new Rectangle(0,0,width,height),ncImg,			   mainFrame);        // Scroll bars, rules and corners        JScrollPane imgScrollPane = new JScrollPane(imgPanel);        f.getContentPane().add(imgScrollPane);          f.pack();        // Display the decoding rate in the title	Rectangle rect = new Rectangle(0,0,width,height);	FrameAttribute fA = new FrameAttribute(ncImg,rawFile,rect,imgPanel,					       inFile.getName()+" @ "+					       df.format(rate)+" bpp",info,					       imgScrollPane,isTemporaryFile);        mainFrame.addInternalFrame(f,fA);        mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                        return;    }    /** Opens three PGX files and display them as a RGB image */    private void openThreePGX(File in) {	mainFrame.setCursor(Cursor.WAIT_CURSOR);	// Retrieve file names prefix	String prefix = in.getPath().	    substring(0,in.getPath().lastIndexOf('.'));		// Image readers	ImgReaderPGX[] imr = new ImgReaderPGX[3];	ImgDataJoiner joiner;	try {	    imr[0] = new ImgReaderPGX(prefix+"-1.pgx");	    imr[1] = new ImgReaderPGX(prefix+"-2.pgx");	    imr[2] = new ImgReaderPGX(prefix+"-3.pgx");	    BlkImgDataSrc[] src = new BlkImgDataSrc[3];	    src[0] = new RescaleImgReader(imr[0]); 	    src[1] = new RescaleImgReader(imr[1]);	    src[2] = new RescaleImgReader(imr[2]);	    int[] cc = new int[3];	    cc[0] = cc[1] = cc[2] = 0;	    joiner = new ImgDataJoiner(src,cc);	    width = imr[0].getImgWidth();	    height = imr[0].getImgHeight();	} catch(IOException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot open specified images: "+                                          prefix+"-{0,1,2}.pgx","Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        // Image producer        try {            image = BlkImgDataSrcImageProducer.createImage(joiner);        } catch(IllegalArgumentException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot create image producer",                                          "Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        rate = (inFile.length()*8f)/(width*height);    }    /** Opens the specified PGX file and creates the Image instance */    private void openPGX(File in) {        mainFrame.setCursor(Cursor.WAIT_CURSOR);                // Image reader        ImgReaderPGX imr;        try {            imr = new ImgReaderPGX(in.getPath());            width = imr.getImgWidth();            height = imr.getImgHeight();        } catch(IOException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot open specified image: "+                                          in.getPath(),"Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        // Image producer        try {            image = BlkImgDataSrcImageProducer.		createImage(new RescaleImgReader(imr));        } catch(IllegalArgumentException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot create image producer",                                          "Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        rate = inFile.length()*8f/width/height;    }    /** Open the PPM file and creates the Image instance */    private void openPPM(File in) {        mainFrame.setCursor(Cursor.WAIT_CURSOR);                // Image reader        ImgReaderPPM imr;        try {            imr = new ImgReaderPPM(in.getPath());            width = imr.getImgWidth();            height = imr.getImgHeight();            ncImg = 3;	    depth = new int[3];	    depth[0] = depth[1] = depth[2] = 8;        } catch(IOException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot open specified image: "+                                          in.getPath(),"Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        // Image producer        try {            image = BlkImgDataSrcImageProducer.createImage(imr);        } catch(IllegalArgumentException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot create image reader",                                          "Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        rawFile = inFile;        rate = inFile.length()*8f/width/height;    }    /** Open the PGM file and creates the Image instance */    private void openPGM(File in) {        mainFrame.setCursor(Cursor.WAIT_CURSOR);                // Image reader        ImgReaderPGM imr;        try {            imr = new ImgReaderPGM(in.getPath());            width = imr.getImgWidth();            height = imr.getImgHeight();        } catch(IOException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot open specified image: "+                                          in.getPath(),"Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        // Image producer        try {            image = BlkImgDataSrcImageProducer.createImage(imr);        } catch(IllegalArgumentException e) {            JOptionPane.showMessageDialog(desktop,                                          "Cannot create image reader",                                          "Error",                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        rawFile = inFile;        rate = inFile.length()*8f/width/height;    }    /** Open the JPEG file, creates the Image instance and the rawFile */    private void openJPEG(File in) {        mainFrame.setCursor(Cursor.WAIT_CURSOR);                JPEGImageDecoder decoder = null;        try {            // Decode the JPEG file and create the BufferedImage instance            decoder = JPEGCodec.createJPEGDecoder(new FileInputStream(in));            image = decoder.decodeAsBufferedImage();            Raster raster = ((BufferedImage)image).getData();            ncImg = raster.getNumBands();            height = raster.getHeight();            width = raster.getWidth();                        // Save decoded image in a temporary PGM or PPM file            if(ncImg==1) { // PGM file                String header = "P5\n"+width+" "+height+"\n255\n";                                rawFile = File.createTempFile("decoded",".pgm");                BufferedOutputStream bos =                     new BufferedOutputStream(new FileOutputStream(rawFile));                bos.write(header.getBytes());                for(int i=0; i<height; i++) {                    for(int j=0; j<width; j++) {                        bos.write(raster.getSample(j,i,0));                    }                }                bos.close();            } else if(ncImg==3) { // PPM file                String header = "P6\n"+width+" "+height+"\n255\n";                                rawFile = File.createTempFile("decoded",".ppm");                BufferedOutputStream bos =                     new BufferedOutputStream(new FileOutputStream(rawFile));                bos.write(header.getBytes());                for(int i=0; i<height; i++) {                    for(int j=0; j<width; j++) {                        bos.write(raster.getSample(j,i,0));                        bos.write(raster.getSample(j,i,1));                        bos.write(raster.getSample(j,i,2));                    }                }                bos.close();            } else { // Not supported number of components                JOptionPane.showMessageDialog(desktop,"Error",                                              "Not supported JPEG format"+                                              inFile.getPath(),                                              JOptionPane.ERROR_MESSAGE);                mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                return;            }                    } catch(IOException e) { // Error when decoding JPEG file            JOptionPane.showMessageDialog(desktop,inFile.getPath(),                                          "Unable to open JPEG file: "+                                          inFile.getPath(),                                          JOptionPane.ERROR_MESSAGE);            mainFrame.setCursor(Cursor.DEFAULT_CURSOR);                            return;        }        rate = inFile.length()*8f/width/height;    }    /**      * Open the JPEG 2000 file/codestream, creates the Image instance and the     * rawFile      * */    private void openJPEG2000(ParameterList pl) {        // Input file        pl.put("i",inFile.getPath());	        // Ouput file        tmpDecFile = null;	for(int c=0; c<ncImg; c++) {	    if(depth[c]>8) {		pgxNeeded = true;	    }	}        try {	    if(pgxNeeded) {		tmpDecFile = File.createTempFile("decoded", ".pgx");	    } else if(ncImg==3) {                tmpDecFile = File.createTempFile("decoded",".ppm");            } else {                tmpDecFile = File.createTempFile("decoded",".pgm");            }         } catch(IOException ioe) {            JOptionPane.showMessageDialog(null,inFile.getPath(),                                          "Cannot decode the codestream",                                          JOptionPane.ERROR_MESSAGE);            return;        }	tmpDecFile.delete();	tmpDecFile.deleteOnExit();        pl.put("o",tmpDecFile.getPath());		// Register the FacilityManager (Dialogs)        JJPopup mypop = new JJPopup(desktop);	FacilityManager.registerMsgLogger(null,mypop);	FacilityManager.registerProgressWatch(null,mainFrame);		// Instantiate decoder        dec = new Decoder(pl);        if(dec.getExitCode() != 0) { // An error ocurred	    FacilityManager.getMsgLogger().		printmsg(MsgLogger.ERROR,"An error ocurred "+			 "while instantiating the decoder.");            FacilityManager.getMsgLogger().flush();            return;        }	        // Run the decoder        dec.setChildProcess(true);	Thread thdec = new Thread(dec);		// Watch decoder termination	ThreadWatch tw = new ThreadWatch(this,thdec);	Thread thWatch = new Thread(tw);	thWatch.start();    }        /** Display the decoded image once the decoding is over */    public void terminatedThread() {        // Create the image        if(ncImg==1) {	    if(pgxNeeded) {		openPGX(tmpDecFile);	    } else {		openPGM(tmpDecFile);	    }        } else if(ncImg==3) {	    if(pgxNeeded) {		openThreePGX(tmpDecFile);	    } else {		openPPM(tmpDecFile);	    }        }        rawFile = tmpDecFile;        rate = j2kdecoder.getRate();                // Display image        String[] info = dec.getCOMInfo();        for(int i=1; i<info.length; i++) {            info[0] += " - "+info[i];        }	if(info.length>0) {	    displayImage(info[0],true);	} else {	    displayImage("",true);	}    }    /**      * Handles events happening to registered components used to open and     * display supported images.      * */    public void actionPerformed(ActionEvent e) {        Object o = e.getSource();                if(j2kdecoder!=null) {            if(o==j2kdecoder.decOptOkBut) { // Simple JPEG 2000 decoding                ParameterList pl = j2kdecoder.getSimpParameters();                openJPEG2000(pl);            } else if(o==j2kdecoder.decOkBut) { // Advanced JPEG 2000 decoding                ParameterList pl = j2kdecoder.getAdvParameters();                openJPEG2000(pl);            }         }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆91在线播放免费| 五月婷婷欧美视频| 日韩精品在线看片z| 777久久久精品| 欧美日韩一区二区在线视频| 成人午夜激情在线| 欧美色男人天堂| 成人免费在线视频| 国产欧美日韩精品a在线观看| 日韩精品自拍偷拍| 久久综合九色综合久久久精品综合 | 日韩精品电影在线| 日韩精品一卡二卡三卡四卡无卡| 香港成人在线视频| 琪琪久久久久日韩精品| 极品美女销魂一区二区三区免费 | 久久九九久精品国产免费直播| 欧美成人免费网站| 国产精品私人自拍| 亚洲精品国产精华液| 性做久久久久久免费观看欧美| 日韩va欧美va亚洲va久久| 韩国av一区二区三区四区| 成人精品一区二区三区中文字幕 | 另类中文字幕网| 成人影视亚洲图片在线| 99精品热视频| 555夜色666亚洲国产免| 久久久久久免费毛片精品| 亚洲欧美成人一区二区三区| 伊人夜夜躁av伊人久久| 免费的国产精品| 成人av网址在线| 欧美色图免费看| 久久久久久电影| 亚洲成av人片在www色猫咪| 狠狠色综合播放一区二区| a4yy欧美一区二区三区| 欧美一卡二卡在线| 亚洲欧洲av色图| 国内一区二区视频| 欧美日韩一区三区四区| 国产精品污污网站在线观看| 亚洲影院久久精品| 国产高清亚洲一区| 日韩一区二区三区av| 国产精品国产自产拍高清av| 免费观看在线色综合| 色视频成人在线观看免| 国产色产综合色产在线视频| 日韩成人一级片| 在线观看网站黄不卡| 国产精品网曝门| 国产真实精品久久二三区| 欧洲一区二区三区在线| 国产精品成人网| 国产毛片精品一区| 欧美xxxx在线观看| 午夜精品久久久久久久久| 国产 欧美在线| 久久欧美一区二区| 久久国产精品色| 日韩一区二区三免费高清| 午夜精品福利一区二区三区av | 日本不卡不码高清免费观看| 欧美性视频一区二区三区| 国产精品另类一区| 国产美女娇喘av呻吟久久| 欧美mv日韩mv国产| 蜜臀99久久精品久久久久久软件| 欧美日韩一区二区电影| 亚洲黄色在线视频| 色婷婷av一区二区三区软件| 亚洲日本va午夜在线电影| 成人国产亚洲欧美成人综合网| 国产欧美日本一区视频| 成人午夜精品在线| 中文字幕一区二区视频| 91亚洲精品乱码久久久久久蜜桃| 中文欧美字幕免费| 99久久99久久精品免费观看| 自拍偷在线精品自拍偷无码专区 | 精品久久久久99| 九一九一国产精品| 久久久影视传媒| 国产69精品久久久久777| 欧美国产激情一区二区三区蜜月| 国产精品一区二区在线播放 | 欧美乱妇15p| 日韩av在线发布| 精品国产区一区| 国产精品一区二区久久精品爱涩| 久久―日本道色综合久久| 成人亚洲一区二区一| 中文字幕日韩一区| 欧美性感一区二区三区| 看国产成人h片视频| 亚洲精品一区二区在线观看| 成人av在线一区二区三区| 亚洲一区免费视频| 日韩欧美国产综合| 国产91清纯白嫩初高中在线观看 | 国产精品久久毛片a| 大尺度一区二区| 亚洲自拍偷拍网站| 日韩午夜中文字幕| av电影天堂一区二区在线观看| 婷婷久久综合九色国产成人| 久久亚洲综合色一区二区三区 | 精品一区二区三区免费播放| 国产日韩欧美精品一区| 日本道免费精品一区二区三区| 亚洲成人免费在线观看| 久久综合狠狠综合久久综合88| 国产91丝袜在线观看| 天天色天天爱天天射综合| 国产午夜精品久久久久久免费视| av电影在线观看一区| 久久超碰97人人做人人爱| 专区另类欧美日韩| 精品日韩在线观看| 在线观看成人免费视频| 国产美女在线精品| 男女男精品视频| 亚洲欧洲av一区二区三区久久| 91精品国产日韩91久久久久久| 粉嫩嫩av羞羞动漫久久久 | 国产精品久久久久婷婷二区次| 91极品美女在线| 国产成人av自拍| 久久精品国产第一区二区三区| 玉足女爽爽91| 国产精品久久久爽爽爽麻豆色哟哟| 欧美成人午夜电影| 4438x成人网最大色成网站| 99精品视频在线免费观看| 黄页视频在线91| 蜜桃一区二区三区在线观看| 亚洲高清不卡在线观看| 国产精品国产三级国产aⅴ入口| 欧美成人伊人久久综合网| 在线不卡a资源高清| 色婷婷国产精品综合在线观看| 成人h动漫精品一区二区| 国产一区二区三区精品视频| 另类中文字幕网| 日韩在线一二三区| 一区二区不卡在线播放| 亚洲欧美成aⅴ人在线观看| 亚洲视频网在线直播| 国产精品毛片a∨一区二区三区| 久久综合国产精品| 久久久精品tv| 中文字幕不卡在线播放| 中文一区在线播放| 国产精品免费人成网站| 亚洲国产精品激情在线观看| 欧美国产精品一区二区| 亚洲欧洲国产专区| 一区二区三区国产精品| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲人成7777| 亚洲va天堂va国产va久| 婷婷中文字幕综合| 激情久久五月天| 成人国产精品免费观看动漫| a亚洲天堂av| 在线精品视频免费播放| 日韩一区二区影院| 国产亚洲污的网站| 一区二区三区四区在线播放| 亚洲一区二区影院| 日本女人一区二区三区| 国产福利一区二区三区视频| aaa亚洲精品| 欧美另类变人与禽xxxxx| 久久综合久色欧美综合狠狠| 欧美激情中文不卡| 亚洲国产精品久久久久秋霞影院| 日本特黄久久久高潮| 成人国产视频在线观看| 欧美日韩国产一区二区三区地区| 欧美一区二区成人| 国产精品日韩成人| 偷偷要91色婷婷| 成人久久久精品乱码一区二区三区| 色屁屁一区二区| 久久亚洲一级片| 一区二区三区精密机械公司| 韩国理伦片一区二区三区在线播放| 国产剧情一区二区三区| 91久久香蕉国产日韩欧美9色| 精品国产91乱码一区二区三区 | 日韩欧美自拍偷拍| 中文字幕日韩一区二区| 精品一区二区三区影院在线午夜| 欧美综合一区二区三区| 久久伊人中文字幕| 日韩激情视频网站| 欧美在线一二三四区|