使用J2SE1.4新特性来获取图象资源

使用J2SE1.4新特性来获取图象资源

 

下面的这个例子示范怎样使用javax.imageio包来从一个文件、输入流或URL获取图象资源,同时也示范了如何来把Image显示到屏幕上. javax.imageio包默认支持GIF,PNG和JPEG格式的图片,这个例子只能工作在J2SE1.4或以上版本


 

    Image image = null;

    try {

        File file = new File("image.gif");

        image = ImageIO.read(file);

 

        InputStream is = new BufferedInputStream(

            new FileInputStream("image.gif"));

        image = ImageIO.read(is);

   

        URL url = new URL("http://hostname.com/image.gif");

        image = ImageIO.read(url);

    } catch (IOException e) {

    }

   

    JFrame frame = new JFrame();

    JLabel label = new JLabel(new ImageIcon(image));

    frame.getContentPane().add(label, BorderLayout.CENTER);

    frame.pack();

    frame.setVisible(true);
 


包javax.imageio默认可以读和写一个GIF,PNG和JPEG图片,你可以调用ImageIO.getReaderFormatNames() 和ImageIO.getWriterFormatNames()来列出全部可读和可写的图片格式


 

    String[] formatNames = ImageIO.getReaderFormatNames();

    formatNames = unique(formatNames);

   

    formatNames = ImageIO.getWriterFormatNames();

    formatNames = unique(formatNames);

    // png jpeg jpg

   

 

    formatNames = ImageIO.getReaderMIMETypes();

    formatNames = unique(formatNames);

    // image/jpeg image/png image/x-png image/gif

   

    formatNames = ImageIO.getWriterMIMETypes();

    formatNames = unique(formatNames);

    // image/jpeg image/png image/x-png

   

 

    public static String[] unique(String[] strings) {

        Set set = new HashSet();

        for (int i=0; i< } String[0]); (String[])set.toArray(new return set.add(name); name="strings[i].toLowerCase();" String { i++)>
 


 

 

图片格式的转换(jpg 转为 png)

package jpgToPng;

 

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

 

import javax.imageio.ImageIO;

 

/**

 * jpg转为png

 * @author steve_wang_victor

 *

 */

public class JpegToPng {

 

         /**

          * @param args

          */

         public static void main(String[] args) {

 

                   BufferedImage bufferedImage = null;

                   File file = new File("D:/excel/123.jpg".replace("jpg", "png"));

                   try {

                            bufferedImage = ImageIO.read(new File("D:/excel/123.jpg"));

                            ImageIO.write(bufferedImage, "png", file);//将bufferedImage图片的格式读进来,转为png格式

                   } catch (IOException e) {

                            e.printStackTrace();

                   }

         }

 

}

你可能感兴趣的:(工作,Excel)