ImageProducer — 이미지 프로듀서 인터페이스

ImageProducer — 이미지 프로듀서 인터페이스 (java.awt.image)

Image를 위한 이미지 데이터를 생성할 수 있는 객체를 위한 인터페이스예요.

출처: Java API Reference

본문

ImageProducer를 구현하는 알려진 클래스로 FilteredImageSource, MemoryImageSource, RenderableImageProducer가 있어요.

각 이미지는 이미지가 필요할 때마다(예: 새 크기의 Image가 스케일링될 때, Image의 너비·높이가 요청될 때) 이미지를 재구성하는 데 사용되는 ImageProducer를 포함해요.

메서드 상세

addConsumer(ImageConsumer ic)

void addConsumer(ImageConsumer ic)

이후의 Image 재구성 중에 이미지 데이터에 접근하기 위해 ImageConsumerImageProducer에 등록해요. ImageProducer는 재량에 따라 즉시, 또는 startProduction 호출로 다음 가용한 이미지 재구성이 트리거될 때 ImageConsumer 인터페이스를 사용해 소비자에게 데이터 전달을 시작할 수 있어요.

isConsumer(ImageConsumer ic)

boolean isConsumer(ImageConsumer ic)

지정된 ImageConsumer 객체가 현재 이 ImageProducer의 소비자 중 하나로 등록되어 있는지 판단해요.

반환값: 지정된 ImageConsumer가 등록되어 있으면 true, 아니면 false

removeConsumer(ImageConsumer ic)

void removeConsumer(ImageConsumer ic)

현재 이미지 데이터를 받도록 등록된 소비자 목록에서 지정된 ImageConsumer 객체를 제거해요. 현재 등록되지 않은 소비자를 제거하는 것은 오류로 간주하지 않아요. ImageProducer는 가능한 한 빨리 이 소비자에게 데이터 전송을 중단해야 해요.

startProduction(ImageConsumer ic)

void startProduction(ImageConsumer ic)

지정된 ImageConsumer 객체를 소비자로 등록하고 이미지 데이터의 즉시 재구성을 시작해, 그 결과를 이 소비자와 생산자에 이미 등록된 다른 소비자에게 전달해요. 이 메서드는 가능한 한 빨리 이미지 데이터의 재생성이 트리거되어야 한다는 점에서 addConsumer 메서드와 달라요.

requestTopDownLeftRightResend(ImageConsumer ic)

void requestTopDownLeftRightResend(ImageConsumer ic)

ImageConsumer를 대신해, 순서대로 픽셀을 받는 데 의존하는 고품질 변환 알고리즘을 사용해 더 나은 출력 버전을 만들 수 있도록 ImageProducer가 이미지 데이터를 한 번 더 TOPDOWNLEFTRIGHT 순서로 재전송해 달라고 요청해요. ImageProducer는 그 순서로 데이터를 재전송할 수 없으면 이 호출을 무시할 수 있어요. 재전송할 수 있다면 다음 최소한의 ImageConsumer 메서드 호출 집합을 실행해 응답해야 해요.

파라미터: ic — 지정된 ImageConsumer

더 알아보기