문제

How can I convert a BufferedImage to an ImageIcon?

I can not find any documentation on this.

도움이 되었습니까?

해결책

Use constructor: ImageIcon(Image image), BufferedImage extends Image.

다른 팁

BufferedImage extends Image, so it's simply:

new ImageIcon(myBufferedImage);
File img = new File("C:\\..\\image.jpg");
BufferedImage bufferedImage = ImageIO.read(img);
ImageIcon imageIcon = new ImageIcon(bufferedImage);
your bufferimage;
JLabel photo = new JLabel("Photo");
photo.setIcon(new ImageIcon(bufferimage));

here is a simple converter:

//Your icon
private ImageIcon icon;
//Your image
private BufferedImage image; 

 public void bufferImageTocon(){
     File file = new File("test.jpg");
     try {
         this.image = ImageIO.read(file);
     } catch (IOException ex) {
         ex.printStackTrace();
     } 

     icon = new ImageIcon(image); 
 }

Use just the constructor to make a new icon, setting the buffered image as a parameter.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top