Toolkit.getDefaultToolKit ()가 Awterror를 던질 때 Java에서 이미지를 어떻게 읽습니까?

StackOverflow https://stackoverflow.com/questions/119857

  •  02-07-2019
  •  | 
  •  

문제

나는 Java를 사용하여 이미지 파일을 읽고 있습니다

java.awt.Image img = Toolkit.getDefaultToolkit().createImage(filePath);

일부 시스템에서는 이것이 작동하지 않으며 대신 태양/AWT/Motif/Mtoolkit에 대해 불평하는 Awterror를 던집니다.

이미지 파일에서 java.awt.image 객체를 어떻게 만들 수 있습니까?

도움이 되었습니까?

해결책

사용한 이미지를 읽습니다 Imageio.

Image i = ImageIO.read(InputStream in);

Javadoc도 더 많은 정보를 제공 할 것입니다.

다른 팁

imageio에는 다른 소스의 이미지를 읽을 수있는 몇 가지 정적 방법이 있습니다. 귀하의 경우 가장 흥미로운 것은 다음과 같습니다.

BufferedImage read(ImageInputStream stream) 
BufferedImage read(File input)
BufferedImage read(InputStream input)

코드에서 내부를 확인했습니다. ImageReader Abstract 클래스를 사용하고 JPEGREADER의 세 가지 구현자가 있습니다. Pngreader와 Gifreader. 이러한 클래스와 BufferedImage는 분명히 기본 방법을 사용하지 않으므로 항상 작동해야합니다.

당신이 가진 Awterror는 당신이 헤드리스 구성에서 Java를 실행하고 있거나 Windows 툴킷에 어떤 종류의 문제가있는 것 같습니다. 특정 오류를 보지 않고는 말하기 어렵습니다. 이 솔루션을 사용하면 이미지를 읽을 수 있지만 (아마도) 이미지와 함께하고 싶은 일에 따라 Awterror는 나중에 표시하려고 할 때 던져 질 수 있습니다.

Java 매개 변수가 도움이 될 수 있으므로 "-djava.awt.headless = true"를 추가하는 일부 시스템에서.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top