Vikings

          java.awt.Image 的幾樣經(jīng)驗

          1. 從文件/或者Url中獲得Image.
          java.awt.image包下的

          Toolkit.getDefaultToolkit().createImage(Url)
          Toolkit.getDefaultToolkit().createImage(File);

          返回是java.awt.Image

          javax.imageio包下的:

          ImageIO.read(Url);

          返回是BufferedImage

          2. Image to bytes;

             Iterator iter = ImageIO.getImageWritersByMIMEType("image/jpeg");
                      ImageWriter writer 
          = iter.hasNext() ? (ImageWriter) iter.next() : null;
                      ByteArrayOutputStream baos 
          = new ByteArrayOutputStream();
                      ImageOutputStream ios 
          = ImageIO.createImageOutputStream(baos);
                      writer.setOutput(ios);
                      BufferedImage rendImage 
          = null;
                      
          if (image instanceof BufferedImage) {
                          rendImage 
          = (BufferedImage) image;
                      }
           else {
                          Frame frame 
          = new Frame();
                          frame.addNotify();
                          MediaTracker tracker 
          = new MediaTracker(frame);                
                          tracker.addImage(image, 
          0);
                          tracker.waitForAll();
                          rendImage 
          = new BufferedImage(image.getWidth(null),
                                  image.getHeight(
          null), 1);
                          Graphics g 
          = rendImage.createGraphics();
                          g.drawImage(image, 
          00null);
                      }

                      writer.write(
          new IIOImage(rendImage, nullnull));
                      writer.dispose();
                      
          return baos.toByteArray();

          3. 剪裁圖片
          起作用是ImageFilter

              ImageFilter smallCropFilter =new CropImageFilter(0,0,20,20);
              java.awt.Image smallImage
          = Toolkit.getDefaultToolkit().createImage(new FilteredImageSource(sourceImage.getSource(),smallCropFilter));                
                                    




           

          posted on 2006-02-16 15:22 Vikings 閱讀(2341) 評論(1)  編輯  收藏

          Feedback

          # re: java.awt.Image 的幾樣經(jīng)驗 2006-07-31 17:42 jd

          謝謝!剛好做圖片這一部分。  回復(fù)  更多評論   



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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 安徽省| 家居| 桑植县| 大竹县| 天台县| 象州县| 靖西县| 新巴尔虎左旗| 渑池县| 鹤庆县| 天柱县| 江口县| 怀集县| 广安市| 德州市| 嵊州市| 南皮县| 拉孜县| 弋阳县| 海林市| 策勒县| 江西省| 安西县| 静乐县| 奉新县| 湘乡市| 安国市| 厦门市| 若尔盖县| 萝北县| 开封市| 怀化市| 白水县| 绥中县| 利辛县| 沂水县| 岱山县| 阿鲁科尔沁旗| 汨罗市| 山东省| 阿拉善盟|