2

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

4

5 回答 5

5

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

BufferedImage image = ImageIO.read(new File(filename));
于 2012-06-30T04:18:06.183 回答
2

试试这个,使用类“javax.imageio.ImageIO”像

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

另请参阅此链接

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

于 2012-06-30T04:15:18.957 回答
1

将常规转换为 a 的最安全方法ImageBufferedImage创建一个新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);

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

于 2012-06-30T04:23:14.140 回答
0

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

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

BufferedImage img = null;
try {
    img = ImageIO.read(new File("image.jpg"));
} catch (IOException e) {
   e.printStackTrace()
}
于 2012-06-30T04:24:17.677 回答
0

要从特定文件加载图像,请使用以下代码:
阅读更多阅读/加载图像
使用图像

BufferedImage img = null;
 try {
   img = ImageIO.read(new File("your/image/path/name.jpg"));
  } catch (IOException e) { 
   // handle exception 
  }
于 2012-06-30T05:16:38.540 回答