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

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

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

поддержка ImageIcon типичная png,gif,jpg картинки.

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

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

спасибо

2 ответов


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

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

JLabel label = new JLabel(icon);

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


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

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

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