Java加载图片 Image与BufferedImage 区别

来源:互联网 发布:武汉科瑞财富网络 编辑:程序博客网 时间:2024/04/30 23:49
Image是一个抽象列,BufferedImage是Image的实现。 

Image和BufferedImage的主要作用就是将一副图片加载到内存中。 

    BufferedImage 子类描述具有可访问图像数据缓冲区的 ImageBufferedImage 由图像数据的 ColorModelRaster 组成。RasterSampleModel 中 band 的数量和类型必须与 ColorModel 所要求的数量和类型相匹配,以表示其颜色和 alpha 分量。所有BufferedImage 对象的左上角坐标都为 (0, 0)。因此,用来构造 BufferedImage 的任何Raster 都必须满足:minX=0 且 minY=0。 

Java将一副图片加载到内存中的方法是:

String imgPath = "D://demo.bmp";  BufferedImage image = ImageIO.read(new FileInputStream(imgPath)); 

该方法BufferedImage 可以获得图片的详细信息,例如:获得图片的宽度:image.getWidth(null);图片只有加载内存中才能对图片进行进一步的处理。

String imgPath = "D://demo.bmp";  Image imageToolkit.getDefaultToolkit().getImage(imgPath);

Image <span style="font-family: Helvetica, Tahoma, Arial, sans-serif; background-color: rgb(255, 255, 255);">不能把图片加载到内存中,仅仅是得到图片,所以也就不能获得图片的信息,图片的长宽信息都无法拿到。</span>

0 0