Java JPG CMYK RGB ImageIO.read

Circlee7
2 min readDec 13, 2018

--

Java TwelveMonkeys ImageIO를 이용하여 JPG CMYK를 읽어보자

  • TwelveMonkeys 는 ImageIO를 확장하고 추가적인 플러그인을 제공한다
  • 기존에 ImageIO를 사용한코드 ImageIO.read(inputStream) 등을 수정할 필요가 없다.

JPG 파일을 ImageIO.read를 이용하여 BufferedImage로 변환하고 있었다.

그러던 중 특정 JPG 파일 에서 아래와 같은 예외가발생하였다.

javax.imageio.IIOException: Unsupported Image Type
  • ImageIO에서는 JPG encoding이 RGB로 된 파일만 지원한다. -_-g
  • CMYK JPEGs (converted to RGB by default or as CMYK, using embedded ICC profile)
  • TwelveMonkeys 에서는 CMYK JPEG 를 지원한다.

gradle 에 아래 의존성을 추가해보자.

compile ('com.twelvemonkeys.imageio:imageio-core:3.4.1')
compile ('com.twelvemonkeys.imageio:imageio-jpeg:3.4.1')

테스트시 의존성 추가 만으로도 예외 발생 없이 JPG CMYK 를 RGB BufferedImage로 읽을 수 있었다.

--

--

Circlee7
Circlee7

No responses yet