나는 문제가 무엇인지 압니다. 나는 그것을 고치는 방법을 모릅니다. 그래서 프로그램에서 렌더링하려는 이미지가 있습니다. ImageIO를 사용하여 이미지를로드합니다. 그러나 내가주는 길에 문제가있는 것 같습니다. NetBeans를 IDE로 사용하고 있는데 이미지 파일을 올바르게 저장하고 있는지 모르겠습니다.
첫 번째 방법 :
public void init(){
BufferedImageLoader loader = new BufferedImageLoader();
try{
spriteSheet = loader.loadImage("/sprite_sheet.png");
}catch(IOException e){
e.printStackTrace();
}
SpriteSheet ss = new SpriteSheet(spriteSheet);
player = ss.grabImage(1,1,32,32);
}
로더 BufferedImageLoader 클래스 :
public class BufferedImageLoader {
private BufferedImage image;
public BufferedImage loadImage(String path) throws IOException{
image = ImageIO.read(getClass().getResource(path));
return image;
}
}
'src'폴더 아래의 'res'폴더에 이미지가 저장되어 있습니다.
오류: Exception in thread "Thread-2" java.lang.IllegalArgumentException: input == null!
감사합니다.
왜 getClass (). getResource ()를 사용해야합니까?
ImageIO.read의 가장 간단한 사용법은 다음과 같습니다.
image = ImageIO.read(new File(path));
경로에 폴더를 추가해야 할 수도 있습니다.
spriteSheet = loader.loadImage("/src/res/sprite_sheet.png");
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다