Composite — 그리기 원시도 합성 규칙 정의

Composite — 그리기 원시도 합성 규칙 정의

Composite 인터페이스는 CompositeContext와 함께, 그리기 원시도(draw primitive)를 기본 그래픽 영역과 합성하는 메서드를 정의해요.

출처: Java API Reference

본문

public interface Composite

CompositeGraphics2D 컨텍스트에 설정되면, 렌더링되는 모양·텍스트·이미지를 미리 정의된 규칙에 따라 이미 렌더링된 색과 결합해요. 이 인터페이스를 구현하는 클래스는 규칙과, 특정 작업을 위한 컨텍스트를 만드는 메서드를 제공해요.

CompositeContext는 합성 작업에 사용되는 환경으로, 작업이 시작되기 전에 Graphics2D가 생성해요. 컨텍스트가 더 필요 없어지면 Graphics2D는 작업에 할당된 자원을 회수하기 위해 이를 폐기해요.

Composite를 구현하는 클래스의 인스턴스는 불변이어야 해요. Graphics2DsetComposite로 설정되거나 복제될 때 이 객체를 복제하지 않기 때문이에요. Graphics2D 컨텍스트에 설정된 뒤 Composite 객체가 변경되면 렌더링 동작이 정의되지 않을 수 있어요.

이 인터페이스가 대상 장치나 이미지의 픽셀 내용을 잠재적으로 임의의 코드에 노출해야 하므로, 화면 장치에 직접 렌더링할 때 이 인터페이스를 구현한 커스텀 객체를 쓰는 것은 readDisplayPixels AWTPermission의 적용을 받아요.

더 알아보기