2013. 3. 25. 00:29ㆍ99. 정리전 - IT/11. Java
썸네일 파일
javax.imageio.IimageIO 클래스가 제공하는 read()메소드 | ||
이미지 파일 읽어오기 |
BufferedImage read(File input) |
File file = new File("c:\\image\\그림파일명"); BufferedImage image = ImageIO.read(file); |
InputStream input방식 |
FileInputStream input = new FileInputStream("그림파일명"); BufferedImage image = ImageIO.read(input); | |
URL input방식 |
URL logoUrl = new URL("url 경로"); BufferedImage logoImage = ImageIO.read(logoUrl); | |
썸네일 이미지 만들기 |
ImageIO.read() 메소드를 사용하여 이미지를 BufferedImage에 저장 |
BufferedImage srcImg = ImageIO.read(imgFile); |
변경할 크기를 갖는 새로운 BufferedImage 객체를 생성 |
BufferedImage destImg = new BufferedImage(w,h,BufferedImage.TYPE_3BYTE_BGR); | |
대상 BufferedImage객체의 createGrahpics() 메소드를 호출하여 대상 BufferedImage에 그림을 그릴 수 있는 Grahpics2D 객체를 구한다 |
Grahpics2D g = srcImg.createGraphics(); g.drawImage(srcImg,0,0,width,height,null); | |
Grahpics2D 객체를 사용하여 원본BufferedImage를 대상 BufferedImage에 그린다. 원하는 크기로 그려준다 | ||
BufferedImage를 파일로 저장하기 |
ImageIO 클래스는 write()메소드를 통해서 BufferedImage를 출력할 수 있도록 하고있다 |
- write(RenderedImage im, String formatName, File output) - write(RenderedImage im, String formatName, OutputStream output) ex) File file = new File("new.jpg"); ImageIO.write(img, "JPEG",file); |
이미지 크기 변경해 주는 ImageUtil 클래스의 resize() 메소드 |
- ImageUtil.resize(srcFile, destFile, width, height);
- ImageUtil.resize(srcStream, destFile, width, height); - ImageUtil.SAME : 원본 이미지와 같은크기를 갖는다 |
EX) ImageUtil.resize(src, dest, ImageUtil.SAME, 100) 높이를 100으로 지정
- ImageUtil.RATIO : 폭의 크기에 변화비율에 맞춰 높이의 크기를 변경한다 EX) ImageUtil.resize(src, dest, 100, ImageUtil.RATIO) 폭을 100으로 지정,높이는 폭의 변화된 비율만큼 변경 |
실제 그림 이미지가 들어가는 경로 D:\jsp\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps |