Java如何读取bmp文件?

3
我正在为一个简单的地图生成器制作地图编辑器。
我的想法是将地图中的墙壁涂成黑色像素,其他所有区域(白色)都是房间内的自由空间。
有没有可以读取bmp文件的.jar文件?这样就可以避免头文件等问题了?
更新
我正在阅读关于 Image4j 的内容。
提前感谢。

2
这篇文章或许会有帮助。不保证,只是一点点的谷歌搜索!^_^ - Stephen
3个回答

1
如果你想使用Image4j,那是一个相当简单的方法。这段代码将在JLabel中显示一个bmp文件。
    BufferedImage image = null;

    try
    {
        image = BMPDecoder.read(new File("C:\\test.bmp"));
    }
    catch(IOException ex)
    {
        Logger.getLogger(DesktopApplication1View.class.getName()).log(Level.SEVERE, null, ex);
    }

    jLabel1.setIcon(new ImageIcon(image));

1
import javax.imageio.ImageIO;

class ListImageReaders {
    public static void main(String[] args) {
        String[] imageReaders = ImageIO.getReaderFileSuffixes();
        for (String imageReader : imageReaders) {
            System.out.println(imageReader);
        }
    }
}

输出结果(在Java 1.6下)

bmp
jpg
wbmp
jpeg
png
gif
Press any key to continue . . .

1
我建议您也查看Java高级图像API Image I/O子项目。该项目Javadoc表明,对于BMP文件有支持(主要是光栅模式)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接