Converting Image to BufferedImage

2019-07-21 06:25发布

I'm having an image on disk. I want to convert it to a BufferedImage so that i can apply filters on it. Is there any way to do this?

5条回答
ら.Afraid
2楼-- · 2019-07-21 06:28

To load an image from a specific file use the following code:
read more 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 
  }
查看更多
Luminary・发光体
3楼-- · 2019-07-21 06:32

The safest way to convert a regular Image to a BufferedImage is just creating a new BufferedImage and painting the Image on it, like so:

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);

This may not be the best way regarding performance, but it is sure to always work.

查看更多
Summer. ? 凉城
4楼-- · 2019-07-21 06:42

use ImageIO.read(File) . It returns BufferedImage :

BufferedImage image = ImageIO.read(new File(filename));
查看更多
冷血范
5楼-- · 2019-07-21 06:52

Try this, Use class "javax.imageio.ImageIO" like

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

Also refer this link

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

查看更多
Summer. ? 凉城
6楼-- · 2019-07-21 06:55

Java 2D™ supports loading these external image formats into its BufferedImage format using its Image I/O API which is in the javax.imageio package. Image I/O has built-in support for GIF, PNG, JPEG, BMP, and WBMP.

To load an image from a specific file use the following code:

BufferedImage img = null;
try {
    img = ImageIO.read(new File("image.jpg"));
} catch (IOException e) {
   e.printStackTrace()
}
查看更多
登录 后发表回答