JavaTM 2
Platform
Std.  Ed.  v1. 4.0

javax.swing.text
클래스 StyleContext

java.lang.Object 
  |
  +--javax.swing.text.StyleContext
모든 구현 인터페이스:
AbstractDocument.AttributeContext , Serializable
직계의 기존의 서브 클래스:
StyleSheet

public class StyleContext
extends Object
implements Serializable , AbstractDocument.AttributeContext

서식 및 관련하는 리소스의 풀입니다. 이 클래스는 다양한 서식 정의에 의해 재이용되는 폰트 및 색등이 다양한 리소스의 캐쉬를 보관 유지하는 컨테이너가 되는 것으로, 리소스의 그룹의 수명을 결정합니다. 필요한 경우, 이것은 관련 리소스를 최대한으로 공유하기 위해서 복수의 문서로 공유할 수 있습니다.

또, 이 클래스는 속성의 작은 세트에 대한 효율적인 서포트를 제공해, 사용을 공유하는 것으로 속성을 압축해, 그러한 변경 불가능한 성질을 최대한으로 이용합니다. 많은 서식은 복제되므로, 공유의 가능성이 커져, 카피가 몇번이나 사용됩니다. 큰 세트는 공유의 가능성을 감소시키므로, 필연적으로 용량 효율이 뒤떨어진 구현이 됩니다.

경고: 이 클래스의 직렬화 된 오브젝트는 향후의 Swing 의 릴리스와는 호환성을 가지지 않습니다. 현재의 직렬화 서포트는 단기간의 운용이나, 같은 버젼의 Swing 를 실행하는 어플리케이션간의 RMI 에 적절하고 있습니다. 1.4 에서는 모든 JavaBeansTM 의 장기 운용 서포트가, java.beans 패키지에 추가되었습니다. XMLEncoder 를 참조해 주세요.


중첩된 클래스의 개요
 class StyleContext.NamedStyle
          통상, 캐릭터 및 단락의 서식을 나타내기 위해서(때문에) 사용되는 속성의 콜렉션입니다.
 class StyleContext.SmallAttributeSet
          이 클래스는 소수의 속성을 배열로서 저장합니다.
 
필드의 개요
static String DEFAULT_STYLE
          단락에 접속되는 디폴트의 논리 서식에 붙일 수 있는 이름입니다.
 
생성자의 개요
StyleContext ()
          새로운 StyleContext 오브젝트를 작성합니다.
 
메소드의 개요
 AttributeSet addAttribute (AttributeSet  old, Object  name, Object  value)
          지정된 세트에 속성을 추가해, 그 새로운 세트를 돌려줍니다.
 AttributeSet addAttributes (AttributeSet  old, AttributeSet  attr)
          속성 세트를 요소에 추가합니다.
 void addChangeListener (ChangeListener  l)
          서식이 추가 또는 삭제될 때 변경을 추적하는 청취자를 추가합니다.
 Style addStyle (String  nm, Style  parent)
          서식 계층에 새로운 서식을 추가합니다.
protected  MutableAttributeSet createLargeAttributeSet (AttributeSet  a)
          메모리 효율보다 처리 시간을 우선하는 경우를 위한, 큰 사이즈의 속성 세트를 작성합니다.
protected  StyleContext.SmallAttributeSet createSmallAttributeSet (AttributeSet  a)
          공유 가능하고 컴팩트한 속성 세트를 작성합니다.
 Color getBackground (AttributeSet  attr)
          속성 세트를 백그라운드 칼라의 지정으로 변환합니다.
 ChangeListener [] getChangeListeners ()
          addChangeListener()에 의해 이 StyleContext 에 추가된, 전 ChangeListener 로부터 되는 배열을 돌려줍니다.
protected  int getCompressionThreshold ()
          일의로 변경이 불가능한 세트에 압축을 시도하는 키와 값의 페어의 최대수를 돌려줍니다.
static StyleContext getDefaultStyleContext ()
          독자적인 문맥을 정의 또는 공급하지 않는 모든 문서에 의해 공유되는 디폴트의 AttributeContext 를 돌려줍니다.
 AttributeSet getEmptySet ()
          하늘의 속성 세트를 꺼냅니다.
 Font getFont (AttributeSet  attr)
          속성 세트로부터 폰트를 돌려줍니다.
 Font getFont (String  family, int style, int size)
          새로운 폰트를 돌려줍니다.
 FontMetrics getFontMetrics (Font  f)
          폰트메트릭스를 돌려줍니다.
 Color getForeground (AttributeSet  attr)
          속성 세트를 foreground 칼라의 지정으로 변환합니다.
static Object getStaticAttribute (Object  key)
          직전에 registerStaticAttributeKey 에 등록된 오브젝트를 돌려줍니다.
static Object getStaticAttributeKey (Object  key)
          key 에 등록되는 String 를 돌려줍니다.
 Style getStyle (String  nm)
          문서에 이전에 추가된 이름 첨부의 서식을 꺼냅니다.
 Enumeration getStyleNames ()
          정의되고 있는 서식의 이름을 꺼냅니다.
 void readAttributes (ObjectInputStream  in, MutableAttributeSet  a)
          속성을 읽어들이는 문맥 고유의 처리입니다.
static void readAttributeSet (ObjectInputStream  in, MutableAttributeSet  a)
          지정된 오브젝트 입력 스트림으로부터 ,writeAttributeSet 로 이전에 기입해지고 있는 속성 세트를 읽어들입니다.
 void reclaim (AttributeSet  a)
          MutableAttributeSet 의 구현에 의해 필요하게 되지 않게 된 세트를 돌려줍니다.
static void registerStaticAttributeKey (Object  key)
          오브젝트를, 속성 세트로 키로서 사용되는 static 오브젝트로서 등록합니다.
 AttributeSet removeAttribute (AttributeSet  old, Object  name)
          세트로부터 속성을 삭제합니다.
 AttributeSet removeAttributes (AttributeSet  old, AttributeSet  attrs)
          요소의 속성 세트를 삭제합니다.
 AttributeSet removeAttributes (AttributeSet  old, Enumeration  names)
          요소의 속성 세트를 삭제합니다.
 void removeChangeListener (ChangeListener  l)
          서식의 추가 또는 삭제를 추적하고 있던 청취자를 삭제합니다.
 void removeStyle (String  nm)
          이전에 문서에 추가된 이름 첨부 서식을 삭제합니다.
 String toString ()
          서식 문맥을 캐릭터 라인으로 변환합니다.
 void writeAttributes (ObjectOutputStream  out, AttributeSet  a)
          속성을 기입하는 문맥 고유의 처리입니다.
static void writeAttributeSet (ObjectOutputStream  out, AttributeSet  a)
          직렬화를 위해서(때문에), 지정된 오브젝트 스트림에 속성 세트를 기입합니다.
 
클래스 java.lang. Object 에서 상속받은 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait
 

필드의 상세

DEFAULT_STYLE

public static final String  DEFAULT_STYLE
단락에 접속되는 디폴트의 논리 서식에 붙일 수 있는 이름입니다.

관련 항목:
정수 필드치
생성자의 상세

StyleContext

public StyleContext()
새로운 StyleContext 오브젝트를 작성합니다.

메소드의 상세

getDefaultStyleContext

public static final StyleContext  getDefaultStyleContext()
독자적인 문맥을 정의 또는 공급하지 않는 모든 문서에 의해 공유되는 디폴트의 AttributeContext 를 돌려줍니다.

반환값:
문맥

addStyle

public Style  addStyle(String  nm,
                      Style  parent)
서식 계층에 새로운 서식을 추가합니다. 서식의 속성은 아래에서 위로 향해 해석 처리되므로, 아이로 지정된 속성은 부모로 지정된 속성을 오버라이드(override) 합니다.

파라미터:
nm - 서식의 이름. 이 이름은 문서내의 이름 첨부 서식의 콜렉션 중(안)에서 일의가 아니면 안된다. 이름은 서식에 이름이 붙지 않은 경우는 null 도 가능하지만, 호출측은 이름이 없는 서식이 이름으로 취득할 수 없는 경우에 돌려주어지는 참조를 관리해야 한다. 이름이 없는 서식은 스타일 런으로 볼 수 있는 것 같은 캐릭터 속성의 오버라이드(override)등으로 편리한 경우가 있는
parent - 친서식. 지정되어 있지 않은 속성이 다른 서식에서 해석 처리될 필요가 없는 경우는 null 도 가능
반환값:
작성된 서식

removeStyle

public void removeStyle(String  nm)
이전에 문서에 추가된 이름 첨부 서식을 삭제합니다.

파라미터:
nm - 삭제되는 서식의 이름

getStyle

public Style  getStyle(String  nm)
문서에 이전에 추가된 이름 첨부의 서식을 꺼냅니다.

파라미터:
nm - 서식의 이름
반환값:
서식

getStyleNames

public Enumeration  getStyleNames()
정의되고 있는 서식의 이름을 꺼냅니다.

반환값:
이름의 열거의 리스트

addChangeListener

public void addChangeListener(ChangeListener  l)
서식이 추가 또는 삭제될 때 변경을 추적하는 청취자를 추가합니다.

파라미터:
l - 변경 청취자

removeChangeListener

public void removeChangeListener(ChangeListener  l)
서식의 추가 또는 삭제를 추적하고 있던 청취자를 삭제합니다.

파라미터:
l - 변경 청취자

getChangeListeners

public ChangeListener [] getChangeListeners()
addChangeListener()에 의해 이 StyleContext 에 추가된, 전 ChangeListener 로부터 되는 배열을 돌려줍니다.

반환값:
추가된 모든 ChangeListener. 추가된 청취자가 없는 경우는 하늘의 배열
도입된 버젼:
1.4

getFont

public Font  getFont(AttributeSet  attr)
속성 세트로부터 폰트를 돌려줍니다. 이 메소드는 지정된 속성 세트에 대해서, 캐쉬된 폰트의 취득을 시도하기 위해서(때문에) 구현됩니다. 이 취득이 실패했을 경우, 폰트 기능이 해석 처리되어 폰트는 저레벨의 폰트 캐쉬로부터 취득됩니다.

파라미터:
attr - 속성 세트
반환값:
폰트

getForeground

public Color  getForeground(AttributeSet  attr)
속성 세트를 foreground 칼라의 지정으로 변환합니다. 이 메소드는 밝음이나 색조등을 강조하기 위해서 사용되는 일이 있습니다. 디폴트에서는 단순하게 StyleConstants.Foreground 속성으로 지정된 값을 돌려줍니다.

파라미터:
attr - 속성 세트
반환값:

getBackground

public Color  getBackground(AttributeSet  attr)
속성 세트를 백그라운드 칼라의 지정으로 변환합니다. 이 메소드는 밝음이나 색조등을 강조하기 위해서 사용되는 일이 있습니다. 디폴트에서는 단순하게 StyleConstants.Background 속성으로 지정된 값을 돌려줍니다.

파라미터:
attr - 속성 세트
반환값:

getFont

public Font  getFont(String  family,
                    int style,
                    int size)
새로운 폰트를 돌려줍니다. 이 메소드는 폰트가 캐쉬되고 있는 경우에 캐쉬로부터 폰트를 돌려줍니다. 폰트가 캐쉬되어 있지 않은 경우, 폰트가 캐쉬에 추가됩니다. 이것은 기본적으로 1.1 의 폰트 기능의 저레벨의 캐쉬입니다.

파라미터:
family - 폰트 패밀리 ( 「Monospaced」 등)
style - 폰트의 서식 (Font.PLAIN 등)
size - 포인트 사이즈 >= 1
반환값:
신규 폰트

getFontMetrics

public FontMetrics  getFontMetrics(Font  f)
폰트메트릭스를 돌려줍니다.

파라미터:
f - 폰트
반환값:
메트릭스

addAttribute

public AttributeSet  addAttribute(AttributeSet  old,
                                 Object  name,
                                 Object  value)
지정된 세트에 속성을 추가해, 그 새로운 세트를 돌려줍니다.

이 메소드는 thread 세이프입니다만, 대부분의 Swing 메소드는 다릅니다. 자세한 것은 「Threads and Swing」를 참조해 주세요.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 addAttribute
파라미터:
old - 구속성 세트
name - null 이외의 속성명
value - 속성치
반환값:
갱신 속성 세트
관련 항목:
MutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)

addAttributes

public AttributeSet  addAttributes(AttributeSet  old,
                                  AttributeSet  attr)
속성 세트를 요소에 추가합니다.

이 메소드는 thread 세이프입니다만, 대부분의 Swing 메소드는 다릅니다. 자세한 것은 「Threads and Swing」를 참조해 주세요.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 addAttributes
파라미터:
old - 구속성 세트
attr - 추가하는 속성
반환값:
갱신 속성 세트
관련 항목:
MutableAttributeSet.addAttribute(java.lang.Object, java.lang.Object)

removeAttribute

public AttributeSet  removeAttribute(AttributeSet  old,
                                    Object  name)
세트로부터 속성을 삭제합니다.

이 메소드는 thread 세이프입니다만, 대부분의 Swing 메소드는 다릅니다. 자세한 것은 「Threads and Swing」를 참조해 주세요.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 removeAttribute
파라미터:
old - 구속성 세트
name - null 이외의 속성명
반환값:
갱신 속성 세트
관련 항목:
MutableAttributeSet.removeAttribute(java.lang.Object)

removeAttributes

public AttributeSet  removeAttributes(AttributeSet  old,
                                     Enumeration  names)
요소의 속성 세트를 삭제합니다.

이 메소드는 thread 세이프입니다만, 대부분의 Swing 메소드는 다릅니다. 자세한 것은 「Threads and Swing」를 참조해 주세요.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 removeAttributes
파라미터:
old - 구속성 세트
names - 속성명
반환값:
갱신 속성 세트
관련 항목:
MutableAttributeSet.removeAttributes(java.util.Enumeration)

removeAttributes

public AttributeSet  removeAttributes(AttributeSet  old,
                                     AttributeSet  attrs)
요소의 속성 세트를 삭제합니다.

이 메소드는 thread 세이프입니다만, 대부분의 Swing 메소드는 다릅니다. 자세한 것은 「Threads and Swing」를 참조해 주세요.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 removeAttributes
파라미터:
old - 구속성 세트
attrs - 속성
반환값:
갱신 속성 세트
관련 항목:
MutableAttributeSet.removeAttributes(java.util.Enumeration)

getEmptySet

public AttributeSet  getEmptySet()
하늘의 속성 세트를 꺼냅니다.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 getEmptySet
반환값:
세트

reclaim

public void reclaim(AttributeSet  a)
MutableAttributeSet 의 구현에 의해 필요하게 되지 않게 된 세트를 돌려줍니다. 이 메소드는 약참조가 없는 1.1 에서의 처리에 편리합니다. 통상, 이 메소드는 MutableAttributeSet 의 구현의 finalize 메소드에 의해 불려 갑니다.

이 메소드는 thread 세이프입니다만, 대부분의 Swing 메소드는 다릅니다. 자세한 것은 「Threads and Swing」를 참조해 주세요.

정의:
인터페이스 AbstractDocument.AttributeContext 내의 reclaim
파라미터:
a - 재생하는 세트

getCompressionThreshold

protected int getCompressionThreshold()
일의로 변경이 불가능한 세트에 압축을 시도하는 키와 값의 페어의 최대수를 돌려줍니다. 이 제한을 넘는 세트는 해시 테이블을 사용해, MutableAttributeSet 가 됩니다.

반환값:
해 귀의치

createSmallAttributeSet

protected StyleContext.SmallAttributeSet  createSmallAttributeSet(AttributeSet  a)
공유 가능하고 컴팩트한 속성 세트를 작성합니다. 이것은 서브 클래스에서 SmallAttributeSet 의 동작을 변경하고 싶은 경우에, 서브 클래스에서 이용하기 위한 훅입니다. 이 메소드는 속성 변환을 제공하는 AttributeSet 를 돌려주기 위해서(때문에), 다시 구현할 수도 있습니다.

파라미터:
a - 컴팩트한 형식에서 표현되는 속성 세트

createLargeAttributeSet

protected MutableAttributeSet  createLargeAttributeSet(AttributeSet  a)
메모리 효율보다 처리 시간을 우선하는 경우를 위한, 큰 사이즈의 속성 세트를 작성합니다. 통상, 이 세트의 공유는 곤란합니다. 이것은 큰 사이즈의 속성 저장 형식 (디폴트에서는 SimpleAttributeSet)의 동작을 서브 클래스에서 변경할 필요가 있는 경우에, 서브 클래스에서 이용하기 위한 훅입니다. 이 메소드는 속성 변환을 제공하는 MutableAttributeSet 를 돌려주기 위해서(때문에), 다시 구현할 수도 있습니다.

파라미터:
a - 사이즈의 큰 형식에서 표현되는 속성 세트

toString

public String  toString()
서식 문맥을 캐릭터 라인으로 변환합니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
캐릭터 라인

writeAttributes

public void writeAttributes(ObjectOutputStream  out,
                            AttributeSet  a)
                     throws IOException 
속성을 기입하는 문맥 고유의 처리입니다.

IOException

readAttributes

public void readAttributes(ObjectInputStream  in,
                           MutableAttributeSet  a)
                    throws ClassNotFoundException ,
                           IOException 
속성을 읽어들이는 문맥 고유의 처리입니다.

ClassNotFoundException
IOException

writeAttributeSet

public static void writeAttributeSet(ObjectOutputStream  out,
                                     AttributeSet  a)
                              throws IOException 
직렬화를 위해서(때문에), 지정된 오브젝트 스트림에 속성 세트를 기입합니다. 이 메소드는 특별히 주의해,registerStaticAttributeKey 메소드로 등록되어 있는 static 속성 키를 처리합니다. static 키로서 등록되지 않은 속성 키는 직접 직렬화 됩니다. 모든 값이 직렬화 가능합니다.

파라미터:
out - 출력 스트림
a - 속성 세트
예외:
IOException - 입출력 에러가 발생했을 경우

readAttributeSet

public static void readAttributeSet(ObjectInputStream  in,
                                    MutableAttributeSet  a)
                             throws ClassNotFoundException ,
                                    IOException 
지정된 오브젝트 입력 스트림으로부터 ,writeAttributeSet 로 이전에 기입해지고 있는 속성 세트를 읽어들입니다. 이 메소드는 registerStaticAttributeKey 메소드로 등록되어 있는 키만을 고려하는 현재의 가상 머신으로 static 오브젝트였던 키를 static 오브젝트에 복원하려고 합니다. 스트림으로부터 꺼내진 속성은 지정된 변경이 가능한 세트에 배치됩니다.

파라미터:
in - 속성 데이터를 읽어들이는 오브젝트 스트림
a - 속성 정의를 배치하는 속성 세트
예외:
ClassNotFoundException - 오브젝트 스트림을 읽어들일 때 검출되었을 경우에 위에게 건네진다
IOException - 오브젝트 스트림을 읽어들일 때 검출되었을 경우에 위에게 건네진다

registerStaticAttributeKey

public static void registerStaticAttributeKey(Object  key)
오브젝트를, 속성 세트로 키로서 사용되는 static 오브젝트로서 등록합니다. 그 결과, 그 키는 특별히 직렬화가 처리되게 됩니다.

1.1 가상 머신상에서의 처리의 경우, 이 메소드는 클래스명에 연결된 toString 에 의해 돌려주어지는 값을 사용합니다. toString 에 의해 돌려주어지는 값은 나중에 재계산될 때 같게 되도록(듯이) 하기 위해서는 그 중에 클래스 참조를 갖게할 수 없습니다. 그것은 Object 내의 정의로부터 재구현되지 않으면 안됩니다.

파라미터:
key - null 이외의 오브젝트 키

getStaticAttribute

public static Object  getStaticAttribute(Object  key)
직전에 registerStaticAttributeKey 에 등록된 오브젝트를 돌려줍니다.


getStaticAttributeKey

public static Object  getStaticAttributeKey(Object  key)
key 에 등록되는 String 를 돌려줍니다.

관련 항목:
getStaticAttribute(java.lang.Object) , registerStaticAttributeKey(java.lang.Object)

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

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

Java, Java 2 D, 및 JDBC 는 미국 및 그 외의 나라에 있어서의 미국 Sun Microsystems, Inc. 의 상표 혹은 등록상표입니다.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.