GraphicsEnvironment 클래스
GraphicsEnvironment 클래스
GraphicsEnvironment 클래스는 특정 플랫폼에서 Java 애플리케이션에 사용 가능한 GraphicsDevice 객체와 Font 객체의 모음을 설명해요. 이 GraphicsEnvironment의 리소스는 로컬이거나 원격 머신에 있을 수 있어요.
본문
GraphicsDevice 객체는 화면, 프린터 또는 이미지 버퍼일 수 있으며 Graphics2D 그리기 메서드의 대상이 돼요. 각 GraphicsDevice에는 여러 GraphicsConfiguration 객체가 연관돼 있고, 이 객체들은 GraphicsDevice를 사용할 수 있는 서로 다른 구성을 지정해요.
public abstract class GraphicsEnvironment
extends Object
주요 메서드
getLocalGraphicsEnvironment()— 로컬 그래픽 환경 인스턴스를 반환하는 정적 메서드예요.getScreenDevices()— 사용 가능한 모든 화면GraphicsDevice배열을 반환해요.getDefaultScreenDevice()— 기본 화면 장치를 반환해요.getCenterPoint()— 중앙 지점Point2D를 반환해요.getMaximumWindowBounds()— 최대 창 bounds를 반환해요.getAllFonts()— 사용 가능한 모든 글꼴 얼굴을Font배열로 반환해요.getAvailableFontFamilyNames()— 사용 가능한 글꼴 패밀리 이름 배열을 반환해요.isHeadlessInstance()— 헤드리스 환경 여부를 확인해요.createGraphics(Image)— 이미지에 그리는Graphics2D를 만들어요.
사용 예
화면 장치 목록을 얻어 각 화면에 창을 배치하거나, 시스템의 글꼴 목록을 조회해 글꼴 선택 UI를 만들 수 있어요.
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] devices = ge.getScreenDevices();
String[] fonts = ge.getAvailableFontFamilyNames();
헤드리스 환경
서버처럼 디스플레이가 없는 환경에서는 isHeadlessInstance()가 true가 돼요. 이런 환경에서는 그래픽 장치가 없을 수 있으므로 화면 장치 관련 코드를 실행하기 전에 확인해야 해요.