InputMethodHighlight 클래스
InputMethodHighlight 클래스
InputMethodHighlight는 조합 중인 텍스트의 강조 속성을 설명하는 데 사용돼요. 설명은 두 수준으로 제공될 수 있어요. 추상 수준에서는 변환 상태와 텍스트가 선택됐는지를 지정하고, 구체 수준에서는 강조를 렌더링하는 데 쓰는 스타일 속성을 지정해요.
본문
InputMethodHighlight는 추상 수준의 설명을 반드시 제공해야 하고, 구체 수준의 설명은 제공할 수도 있고 안 할 수도 있어요. 구체 스타일이 제공되지 않으면 렌더러는 Toolkit.mapInputMethodHighlight(InputMethodHighlight)를 사용해 구체 스타일로 매핑해야 해요.
public class InputMethodHighlight
extends Object
추상 설명의 세 필드
- selected — 텍스트 범위가 입력 방식이 현재 작업 중인 범위인지 나타내요. 예: 변환 후보를 메뉴에 보여주는 세그먼트.
- state — 변환 상태를 나타내요. 상태 값은 입력 방식 프레임워크가 정의하며, 추상→구체 스타일의 모든 매핑에서 구분해야 해요. 현재 정의된 상태 값은 raw(변환 전)와 converted(변환됨)이에요. 이 상태 값들은 텍스트 조합의 주요 변환 단계 전후(kana→kanji, pinyin→hanzi 변환 전후 등)에 사용할 것을 권장해요.
- variation — 입력 방식이 변환 결과에 대한 추가 정보를 표현할 수 있게 해요.
주요 상수
RAW_TEXT/CONVERTED_TEXT— 조합 상태를 나타내는 상수예요.SELECTED_RAW_TEXT/SELECTED_CONVERTED_TEXT— 선택되고 조합된 상태를 나타내는 상수예요.UNSELECTED_RAW_TEXT/UNSELECTED_CONVERTED_TEXT— 선택되지 않은 상태를 나타내는 상수예요.
생성자
InputMethodHighlight(boolean selected, int state)— 추상 설명만으로 만들어요.InputMethodHighlight(boolean selected, int state, int variation)— variation을 지정해 만들어요.InputMethodHighlight(boolean selected, int state, int variation, Map style)— 구체 스타일을 지정해 만들어요.
사용
InputMethodHighlight 인스턴스는 보통 INPUT_METHOD_HIGHLIGHT 속성의 AttributedCharacterIterator에서 반환되는 속성 값으로 사용돼요. 별도 텍스트 세그먼트를 나타내려면 Annotation 인스턴스로 감쌀 수 있어요. 변환 중인 텍스트의 밑줄·색상 같은 강조 표시를 렌더링할 때 이 값으로 시각 효과를 결정해요.