将图像转换为BufferedImage

时间:2012-06-30 04:10:11

标签: java bufferedimage

我在磁盘上有一张图片。我想将它转换为BufferedImage,以便我可以在其上应用过滤器。有没有办法做到这一点?

5 个答案:

答案 0 :(得分:4)

使用ImageIO.read(File)。它返回BufferedImage:

BufferedImage image = ImageIO.read(new File(filename));

答案 1 :(得分:2)

试试这个,使用class" javax.imageio.ImageIO"像

BufferedImage originalImage = ImageIO.read(new File("c:\\image\\mypic.jpg"));

另请参阅此链接

http://www.dzone.com/snippets/converting-images

答案 2 :(得分:1)

将常规Image转换为BufferedImage的最安全方法就是创建一个新的BufferedImage并在其上绘制Image,如下所示:

Image original = ...;

BufferedImage b_img = new BufferedImage(original.getWith(), original.getHeight(), BufferedImage.TYPE_4BYTE_ARGB);
// or use any other fitting type

b_img.getGraphics().drawImage(original, 0, 0, null);

这可能不是关于性能的最佳方式,但它肯定会一直有效。

答案 3 :(得分:0)

Java 2D™支持使用Image I/O API包中的javax.imageio将这些外部图像格式加载到其 BufferedImage 格式中。 Image I / O内置支持GIF,PNG,JPEG,BMP和WBMP。

要从特定文件加载图像,请使用以下代码:

BufferedImage img = null;
try {
    img = ImageIO.read(new File("image.jpg"));
} catch (IOException e) {
   e.printStackTrace()
}

答案 4 :(得分:0)

要从特定文件加载图像,请使用以下代码:
阅读更多Reading/Loading an Image Working with Images

BufferedImage img = null;
 try {
   img = ImageIO.read(new File("your/image/path/name.jpg"));
  } catch (IOException e) { 
   // handle exception 
  }