JavaTM Platform
Standard Ed. 6

java.awt
클래스 GraphicsEnvironment

java.lang.Object 
  상위를 확장 java.awt.GraphicsEnvironment


public abstract class GraphicsEnvironment
extends Object

GraphicsEnvironment 클래스는, 특정의 플랫폼의 JavaTM 어플리케이션으로 사용할 수 있는 GraphicsDevice 객체 및 Font 객체의 컬렉션을 기술합니다. 이 GraphicsEnvironment 의 자원은, 로컬 머신상인가, 원격 머신상에 있습니다. GraphicsDevice 객체는, 화면, 프린터, 또는 이미지 버퍼의 경우가 있어,Graphics2D draw 메소드의 목적지입니다. 각 GraphicsDevice 는, 거기에 관련하고 싶은 구두인가 GraphicsConfiguration 객체를 가집니다. 이러한 객체는,GraphicsDevice 를 사용할 수 있는 다양한 구성을 지정합니다.

관련 항목:
GraphicsDevice , GraphicsConfiguration

생성자 의 개요
protected GraphicsEnvironment ()
          인스턴스를 직접 생성할 수 없는 abstract 클래스입니다.
 
메소드의 개요
abstract  Graphics2D createGraphics (BufferedImage  img)
          지정된 BufferedImage 에 draw하기 위한 Graphics2D 객체를 돌려줍니다.
abstract  Font [] getAllFonts ()
          이 GraphicsEnvironment 로 이용 가능한 모든 폰트에 대해 1 포인트의 사이즈의 인스턴스를 보관 유지하고 있는 배열을 돌려줍니다.
abstract  String [] getAvailableFontFamilyNames ()
          Locale.getDefault() 에 의해 반환된 디폴트 로케일에 로컬라이즈 된, 이 GraphicsEnvironment 의 모든 폰트 패밀리의 이름을 포함하고 있는 배열을 돌려줍니다.
abstract  String [] getAvailableFontFamilyNames (Locale  l)
          지정된 로케일에 로컬라이즈 된 이 GraphicsEnvironment 의 모든 폰트 패밀리의 이름을 포함하고 있는 배열을 돌려줍니다.
 Point getCenterPoint ()
          Window 를 중앙에 배치하는 Point 를 돌려줍니다.
abstract  GraphicsDevice getDefaultScreenDevice ()
          디폴트의 화면 GraphicsDevice 를 돌려줍니다.
static GraphicsEnvironment getLocalGraphicsEnvironment ()
          로컬의 GraphicsEnvironment 를 돌려줍니다.
 Rectangle getMaximumWindowBounds ()
          중앙에 배치된 Window 의 최대의 경계를 돌려줍니다.
abstract  GraphicsDevice [] getScreenDevices ()
          모든 화면 GraphicsDevice 객체의 배열을 돌려줍니다.
static boolean isHeadless ()
          디스플레이, 키보드, 및 마우스가 이 환경에서 지원될지 어떨지를 판정합니다.
 boolean isHeadlessInstance ()
          디스플레이, 키보드, 및 마우스가 이 그래픽스 환경에서 지원될지 어떨지를 돌려줍니다.
 void preferLocaleFonts ()
          논리 폰트로부터 물리 폰트의 매핑에서의 로케일 고유의 폰트의 설정을 지정합니다.
 void preferProportionalFonts ()
          논리 폰트로부터 물리 폰트에의 매핑으로, proportional font 이외의 폰트 (dual-spaced CJK 폰트등)보다 proportional font를 우선하는 설정을 지정합니다.
 boolean registerFont (Font  font)
          이 GraphicsEnvironment/created Font 를 등록합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

GraphicsEnvironment

protected GraphicsEnvironment()
인스턴스를 직접 생성할 수 없는 abstract 클래스입니다. 인스턴스는, 적절한 팩토리 또는 쿼리메소드로부터 취득할 필요가 있습니다.

메소드의 상세

getLocalGraphicsEnvironment

public static GraphicsEnvironment  getLocalGraphicsEnvironment()
로컬의 GraphicsEnvironment 를 돌려줍니다.

반환값:
로컬의 GraphicsEnvironment

isHeadless

public static boolean isHeadless()
디스플레이, 키보드, 및 마우스가 이 환경에서 지원될지 어떨지를 판정합니다. 이 메소드가 true 를 돌려주는 경우, HeadlessException 가 디스플레이, 키보드, 또는 마우스에 의존하는 Toolkit 및 GraphicsEnvironment 의 영역으로부터 throw 됩니다.

반환값:
이 환경이 디스플레이, 키보드, 및 마우스를 지원할 수 없는 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.4
관련 항목:
HeadlessException

isHeadlessInstance

public boolean isHeadlessInstance()
디스플레이, 키보드, 및 마우스가 이 그래픽스 환경에서 지원될지 어떨지를 돌려줍니다. 이 메소드가 true 를 돌려주는 경우,HeadlessException 가 디스플레이, 키보드, 또는 마우스에 의존하는 그래픽스 환경의 영역으로부터 throw 됩니다.

반환값:
디스플레이, 키보드, 및 마우스가 이 환경에서 지원되는 경우는 true, 그렇지 않은 경우는 false
도입된 버젼:
1.4
관련 항목:
HeadlessException , isHeadless()

getScreenDevices

public abstract GraphicsDevice [] getScreenDevices()
                                           throws HeadlessException 
모든 화면 GraphicsDevice 객체의 배열을 돌려줍니다.

반환값:
화면 디바이스를 나타내는 모든 GraphicsDevice 객체를 포함하는 배열
예외:
HeadlessException - isHeadless()가 true 를 돌려주는 경우
관련 항목:
isHeadless()

getDefaultScreenDevice

public abstract GraphicsDevice  getDefaultScreenDevice()
                                               throws HeadlessException 
디폴트의 화면 GraphicsDevice 를 돌려줍니다.

반환값:
디폴트의 화면 디바이스를 나타낸다 GraphicsDevice
예외:
HeadlessException - isHeadless()가 true 를 돌려주는 경우
관련 항목:
isHeadless()

createGraphics

public abstract Graphics2D  createGraphics(BufferedImage  img)
지정된 BufferedImage 에 draw하기 위한 Graphics2D 객체를 돌려줍니다.

파라미터:
img - 지정된 BufferedImage
반환값:
지정된 BufferedImage 에 draw 하기 위해서 사용된다 Graphics2D
예외:
NullPointerException - img 가 null 의 경우

getAllFonts

public abstract Font [] getAllFonts()
GraphicsEnvironment 로 이용 가능한 모든 폰트에 대해 1 포인트의 사이즈의 인스턴스를 보관 유지하고 있는 배열을 돌려줍니다. 일반적으로의 사용법에서는, 사용자는 특정의 폰트를 선택할 수 있습니다. 어플리케이션은 선택이 끝난 인스턴스에 deriveFont 메소드를 호출해, 폰트의 사이즈 변경과 각종 폰트 속성의 설정을 실시할 수가 있습니다.  

이 메소드는 어플리케이션에,Font 인스턴스를 사용해 텍스트를 draw 하는 가장 적확한 제어를 제공합니다. 이 GraphicsEnvironment 의 폰트가 복수의 프로그램 가능한 변화(variation)을 가지는 경우에는, 그 Font 의 1 개의 인스턴스만이 배열로 돌려주어져 다른 변화(variation)은 어플리케이션에 의해 나타나지 않으면 안됩니다.  

이 환경의 폰트가 다양한 마스터 폰트와 같이 복수의 프로그램 가능한 변화(variation)을 가지는 경우에는, 그 폰트의 1 개의 인스턴스만이 Font 배열로 돌려주어져 다른 변화(variation)은 어플리케이션에 의해 나타나지 않으면 안됩니다.

반환값:
Font 객체의 배열
도입된 버젼:
1.2
관련 항목:
getAvailableFontFamilyNames() , Font , Font.deriveFont(int, float) , Font.getFontName()

getAvailableFontFamilyNames

public abstract String [] getAvailableFontFamilyNames()
Locale.getDefault() 에 의해 반환된 디폴트 로케일에 로컬라이즈 된, 이 GraphicsEnvironment 의 모든 폰트 패밀리의 이름을 포함하고 있는 배열을 돌려줍니다.  

일반적인 사용법에서는, 사용자가 특정의 패밀리명을 선택할 수 있도록(듯이) 합니다. 어플리케이션으로 폰트의 작성시에, Bold 나 Italic 등의 스타일과 함께 이 이름을 지정할 수 있기 (위해)때문에, 폰트 시스템에, 같은 폰트 패밀리의 복수의 폰트 중에서 가장 적절한 것을 선택하는 유연성을 줍니다.

반환값:
디폴트 로케일에 로컬라이즈 된 폰트 패밀리명을 (을)를 포함하는 String 의 배열, 또는 이 로케일의 이름이 존재하지 않는 경우는 적절한 대체명
도입된 버젼:
1.2
관련 항목:
getAllFonts() , Font , Font.getFamily()

getAvailableFontFamilyNames

public abstract String [] getAvailableFontFamilyNames(Locale  l)
지정된 로케일에 로컬라이즈 된 이 GraphicsEnvironment 의 모든 폰트 패밀리의 이름을 포함하고 있는 배열을 돌려줍니다.  

일반적인 사용법에서는, 사용자가 특정의 패밀리명을 선택할 수 있도록(듯이) 합니다. 어플리케이션으로 폰트의 작성시에, Bold 나 Italic 등의 스타일과 함께 이 이름을 지정할 수 있기 (위해)때문에, 폰트 시스템에, 같은 폰트 패밀리의 복수의 폰트 중에서 가장 적절한 것을 선택하는 유연성을 줍니다.

파라미터:
l - 특정의 지리적, 정치적, 또는 문화적 영역을 나타낸다 Locale 객체. null 를 지정하면(자), Locale.getDefault() 를 지정한 것이 된다
반환값:
지정된 Locale 에 로컬라이즈 된 폰트 패밀리를 포함하는 String 의 배열, 또는 지정된 로케일의 이름이 존재하지 않는 경우는 적절한 대체명
도입된 버젼:
1.2
관련 항목:
getAllFonts() , Font , Font.getFamily()

registerFont

public boolean registerFont(Font  font)
GraphicsEnvironment/created Font 를 등록합니다. 작성된 폰트는,Font.createFont(int, java.io.InputStream) 를 호출해 반환된 폰트, 또는 Font.deriveFont(int, float) 를 호출해 작성된 폰트로부터 파생한 폰트입니다. 그러한 폰트는, 이 메소드의 호출 후에, 이름 또는 패밀리명으로 새로운 Font 를 구축하기 위해서 사용할 수 있는 것 외에 이 어플리케이션 또는 애플릿의 실행중의 문맥내에서 getAvailableFontFamilyNames()getAllFonts() 를 호출하는 것으로 열거할 수 있습니다. 즉 애플릿은, 다른 애플릿을 식별할 수 있는 것 같은 방법에서는 폰트를 등록할 수 없습니다.  

이 메소드가 폰트를 등록하지 못하고 false 를 돌려주는 이유는, 다음과 같습니다.

반환값:
GraphicsEnvironmentfont 가 정상적으로 등록되었을 경우는 true
도입된 버젼:
1.6

preferLocaleFonts

public void preferLocaleFonts()
논리 폰트로부터 물리 폰트의 매핑에서의 로케일 고유의 폰트의 설정을 지정합니다. 이 메소드를 호출하는 것은, 폰트의 draw로 주요한 서기법 (디폴트의 인코딩 및 초기의 디폴트의 로케일에 의해 지시받은 서기법)을 주로 사용할 필요가 있는 것을 의미합니다. 예를 들어, 주요한 서기법이 일본어의 경우, 가능한 한 일본어를 사용해 문자를 draw 할 필요가 있어, 다른 폰트는 일본어의 폰트가 Glyph를 가지지 않는 문자에게만 사용할 필요가 있습니다.  

이 메소드의 호출에 의해 실행되는 폰트의 draw 동작에서의 실제의 변경은, 구현에 따라서 다릅니다. 전혀 영향이 없는 경우도 있으면, 요구된 동작이 디폴트의 동작에 일치하고 있는 경우도 있습니다. 이 동작은, 경량 컴퍼넌트의 폰트의 draw와 피어 컴퍼넌트의 폰트의 draw로 다른 일이 있습니다. 이 메소드를 호출하면(자), 다른 폰트가 요구되기 (위해)때문에, 클라이언트는 다른 메트리크스를 예상할 필요가 있어, 윈도우의 사이즈와 레이아웃의 재계산이 필요하게 되는 경우도 있습니다. 그 때문에, 이 메소드는 사용자 인터페이스의 초기화전에 호출할 필요가 있습니다.

도입된 버젼:
1.5

preferProportionalFonts

public void preferProportionalFonts()
논리 폰트로부터 물리 폰트에의 매핑으로, proportional font 이외의 폰트 (dual-spaced CJK 폰트등)보다 proportional font를 우선하는 설정을 지정합니다. 디폴트의 매핑에, proportional과 proportional 이외의 형식이 존재하는 폰트가 포함되는 경우, 이 메소드를 호출하는 것은, 매핑으로 proportional 형식을 사용할 필요가 있는 것을 지시합니다.  

이 메소드의 호출에 의해 실행되는 폰트의 draw 동작에서의 실제의 변경은, 구현에 따라서 다릅니다. 전혀 영향이 없는 경우도 있습니다. 이 동작은, 경량 컴퍼넌트의 폰트의 draw와 피어 컴퍼넌트의 폰트의 draw로 다른 일이 있습니다. 이 메소드를 호출하면(자), 다른 폰트가 요구되기 (위해)때문에, 클라이언트는 다른 메트리크스를 예상할 필요가 있어, 윈도우의 사이즈와 레이아웃의 재계산이 필요하게 되는 경우도 있습니다. 그 때문에, 이 메소드는 사용자 인터페이스의 초기화전에 호출할 필요가 있습니다.

도입된 버젼:
1.5

getCenterPoint

public Point  getCenterPoint()
                     throws HeadlessException 
Window 를 중앙에 배치하는 Point 를 돌려줍니다. 중앙에 배치된 Window 가 getMaximumWindowBounds()를 사용해 표시 가능한 영역에 들어갈지 어떨지를 체크하는 것을 추천합니다.

반환값:
Window 를 중앙에 배치하는 포인트
예외:
HeadlessException - isHeadless()가 true 를 돌려주는 경우
도입된 버젼:
1.4
관련 항목:
getMaximumWindowBounds()

getMaximumWindowBounds

public Rectangle  getMaximumWindowBounds()
                                 throws HeadlessException 
중앙에 배치된 Window 의 최대의 경계를 돌려줍니다. 이러한 경계는 태스크바나 도구모음등의 네이티브의 윈도우 처리 시스템의 객체를 처리합니다. 반환된 경계는 1 개의 예외를 가지는 단일의 디스플레이에 상주합니다. 모든 디스플레이를 통해 Window 가 중앙에 배치되는 멀티스크린 시스템의 경우, 이 메소드는 전체의 디스플레이 영역의 경계를 돌려줍니다.  

단일의 디스플레이의 사용할 수 있는 경계를 가져오려면 ,GraphicsConfiguration.getBounds()Toolkit.getScreenInsets() 를 사용합니다.

반환값:
중앙에 배치된 Window 의 최대의 경계
예외:
HeadlessException - isHeadless()가 true 를 돌려주는 경우
도입된 버젼:
1.4
관련 항목:
getCenterPoint() , GraphicsConfiguration.getBounds() , Toolkit.getScreenInsets(java.awt.GraphicsConfiguration)

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.