MultiResolutionImage — 다중 해상도 이미지 인터페이스

MultiResolutionImage — 다중 해상도 이미지 인터페이스 (java.awt.image)

일부 Image 구현이 지원하는 선택적 추가 API로, 다양한 렌더링 해상도에 대한 대체 이미지를 제공할 수 있게 하는 인터페이스예요. Java 9부터 도입됐어요.

출처: Java API Reference

본문

MultiResolutionImage를 구현하는 알려진 클래스로 AbstractMultiResolutionImage, BaseMultiResolutionImage가 있어요.

여러 Graphics.drawImage(...) 변형 메서드는 인자 Image 객체에 이 인터페이스가 구현되어 있으면 그 메서드들을 참조해 각 렌더링 연산에 사용할 최상의 표현을 선택해요.

MultiResolutionImage 인터페이스는 주어진 이미지 너비·높이에 따라 이미지 해상도 변형을 제공하도록 의도된 java.awt.Image의 서브클래스가 구현해야 해요. 편의를 위해 Toolkit.getImage(String)Toolkit.getImage(URL)로 얻은 툴킷 이미지는 해상도 변형의 명명 규칙을 지원하는 플랫폼에서 이 인터페이스를 구현해요. AbstractMultiResolutionImageBaseMultiResolutionImage 클래스는 관련 이미지 목록에서 사용자 정의 다중 해상도 이미지를 쉽게 구성하도록 제공돼요.

메서드 상세

getResolutionVariant(double destImageWidth, double destImageHeight)

Image getResolutionVariant(double destImageWidth, double destImageHeight)

지정된 크기에서 이 논리적 이미지를 가장 잘 나타내는 최적 변형 이미지를 가져와요.

파라미터: destImageWidth — 목적지 이미지 너비(픽셀) / destImageHeight — 목적지 이미지 높이(픽셀)

반환값: 이미지 해상도 변형

예외: IllegalArgumentExceptiondestImageWidthdestImageHeight가 0 이하, 무한대, 또는 NaN일 때

getResolutionVariants()

List<Image> getResolutionVariants()

모든 해상도 변형의 읽기 가능한 목록을 가져와요. 목록은 비어 있지 않아야 하고 해상도 변형을 적어도 하나 포함해야 해요. 많은 구현은 수정 불가능한 목록(unmodifiable list)을 반환한다는 점을 알아두세요.

반환값: 해상도 변형 목록

더 알아보기