Отображение BMP в JLabel

Java может отображать png, jpg и некоторые другие форматы изображений, но мне нужно отображать файл bmp в JLable, получая путь к файлу.

ImageIcon imageIcon = new ImageIcon(imageFile.getAbsolutePath());

ImageIcon поддерживает типичные png,gif,jpg изображения.

В проекте, над которым я работаю, я не могу открыть файл bmp и сохранить тот же файл, что и jpg, потому что я не могу хранить что-либо во время выполнения. Я мог только сгенерировать изображение, удерживая его в памяти. Но я не знаю, как это сделать.

Как я могу показать BMP в Java 1.4?

Спасибо

Ответов (2)

Решение

Я нашел несколько классов, написанных на Java 1.5, но вы можете легко обновить 2 класса, чтобы использовать классы из 1.4.

imag4j может преобразовывать файлы BMP и ICO в объекты BufferedImage, которые вы можете отображать в java. Вы можете импортировать 17 классов и обновить, возможно, 10 строк из-за операторов java 1.5.

Вы получаете конвертер BMP, который работает очень хорошо.

javax.imageio.ImageIO поддерживает формат BMP:

Image image = ImageIO.read(imageFile);
ImageIcon icon = new ImageIcon(image);

JLabel label = new JLabel(icon);

ImageIO также можно использовать для преобразования между разными форматами.