|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjava.text.Bidi
public final class Bidi
이 클래스는 Unicode 쌍방향 알고리즘을 구현합니다.
쌍방향 객체는, 텍스트의 작성에 사용된 쌍방향이 늘어놓고 바꾸고의 정보를 제공합니다. 이것은, 아라비아어나 헤브라이어의 텍스트의 적절한 표시 등에 필요합니다. 이러한 언어는, 숫자는 왼쪽에서 오른쪽에 줄서, 그 외의 텍스트의 대부분이 금방 다른 곳으로 줄선다고 하는 것처럼, 방향이 혼재하고 있습니다.
쌍방향 객체가 생성되면(자), 그 텍스트가 모두 왼쪽에서 오른쪽인가, 또는 모두 오른쪽에서 왼쪽인가에 임해서 조회할 수가 있습니다. 이러한 객체는 큰 일 경량으로, 이 텍스트는 처리가 비교적 용이합니다.
텍스트의 런이 다수 있는 경우, 개시, 리밋트, 및 런의 레벨을 취득하는 인덱스에 의해, 런의 정보에 액세스 할 수 있습니다. 레벨은 방향과 런 방향의 「상자의 레벨」의 양쪽 모두를 나타냅니다. 홀수의 레벨은 오른쪽에서 왼쪽, 짝수의 레벨은 왼쪽에서 오른쪽입니다. 따라서, 예를 들어, 레벨 0 은 왼쪽에서 오른쪽의 텍스트, 레벨 1 은 오른쪽에서 왼쪽의 텍스트, 레벨 2 는 오른쪽에서 왼쪽의 런에 파묻힌 왼쪽에서 오른쪽의 텍스트를 나타냅니다.
필드의 개요 | |
---|---|
static int |
DIRECTION_DEFAULT_LEFT_TO_RIGHT
기준 방향이, Unicode 쌍방향 알고리즘에 준거한, 텍스트내의 최초의 강할 방향 문자에 의존하는 것을 나타내는 정수입니다. |
static int |
DIRECTION_DEFAULT_RIGHT_TO_LEFT
기준 방향이, Unicode 쌍방향 알고리즘에 준거한, 텍스트내의 최초의 강할 방향 문자에 의존하는 것을 나타내는 정수입니다. |
static int |
DIRECTION_LEFT_TO_RIGHT
기준 방향이 왼쪽에서 오른쪽인 것을 나타내는 정수입니다. |
static int |
DIRECTION_RIGHT_TO_LEFT
기준 방향이 오른쪽에서 왼쪽인 것을 나타내는 정수입니다. |
생성자 의 개요 | |
---|---|
Bidi (AttributedCharacterIterator paragraph)
지정한 텍스트의 단락으로부터 쌍방향을 생성합니다. |
|
Bidi (char[] text,
int textStart,
byte[] embeddings,
int embStart,
int paragraphLength,
int flags)
지정된 텍스트, 묻어, 및 방향 정보로부터 쌍방향을 생성합니다. |
|
Bidi (String paragraph,
int flags)
지정한 텍스트의 단락과 기준 방향으로부터 쌍방향을 생성합니다. |
메소드의 개요 | |
---|---|
boolean |
baseIsLeftToRight ()
기준 방향이 왼쪽에서 오른쪽의 경우는 true 를 돌려줍니다. |
Bidi |
createLineBidi (int lineStart,
int lineLimit)
현재의 쌍방향에 의해 나타내지는 단락내의 텍스트행의 쌍방향 정보를 나타내는 쌍방향 객체를 생성합니다. |
int |
getBaseLevel ()
기준 레벨을 돌려줍니다 (왼쪽에서 오른쪽의 경우는 0, 오른쪽에서 왼쪽의 경우는 1). |
int |
getLength ()
행의 텍스트의 길이를 돌려줍니다. |
int |
getLevelAt (int offset)
오프셋(offset)에 있는 문자의 해결된 레벨을 돌려줍니다. |
int |
getRunCount ()
실행하는 레벨수를 돌려줍니다. |
int |
getRunLevel (int run)
이 행의 n 번째의 논리 런의 레벨을 돌려줍니다. |
int |
getRunLimit (int run)
이 은행내에서 n 번째의 논리 런의 종료 위치의 다음에 있는 문자의 인덱스를, 행의 개시 위치로부터의 오프셋(offset)로서 돌려줍니다. |
int |
getRunStart (int run)
이 은행내에서 n 번째의 논리 런의 개시 위치에 있는 문자의 인덱스를, 행의 개시 위치로부터의 오프셋(offset)로서 돌려줍니다. |
boolean |
isLeftToRight ()
행이 모두 왼쪽에서 오른쪽의 텍스트이며, 기준 방향이 왼쪽에서 오른쪽의 경우는 true 를 돌려줍니다. |
boolean |
isMixed ()
행이 왼쪽에서 오른쪽, 또는 오른쪽에서 왼쪽이 아닌 경우는 true 를 돌려줍니다. |
boolean |
isRightToLeft ()
행이 모두 오른쪽에서 왼쪽의 텍스트이며, 기준 방향이 오른쪽에서 왼쪽의 경우는 true 를 돌려줍니다. |
static void |
reorderVisually (byte[] levels,
int levelStart,
Object [] objects,
int objectStart,
int count)
배열내의 객체를, 그 레벨에 근거해 시각적 순서에 늘어놓고 바꿉니다. |
static boolean |
requiresBidi (char[] text,
int start,
int limit)
지정된 텍스트가 쌍방향 해석을 요구하는 경우, true 를 돌려줍니다. |
String |
toString ()
데밧깅에 사용하는, 쌍방향의 내부 상태를 표시합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , wait , wait , wait |
필드의 상세 |
---|
public static final int DIRECTION_LEFT_TO_RIGHT
public static final int DIRECTION_RIGHT_TO_LEFT
public static final int DIRECTION_DEFAULT_LEFT_TO_RIGHT
public static final int DIRECTION_DEFAULT_RIGHT_TO_LEFT
생성자 의 상세 |
---|
public Bidi(String paragraph, int flags)
paragraph
- 텍스트의 단락flags
- 알고리즘을 제어하는 플래그의 컬렉션. 알고리즘은
플래그 DIRECTION_LEFT_TO_RIGHT, DIRECTION_RIGHT_TO_LEFT,
DIRECTION_DEFAULT_LEFT_TO_RIGHT, 및 DIRECTION_DEFAULT_RIGHT_TO_LEFT 를 인식한다.
그 외의 값은 예약이 끝난 상태public Bidi(AttributedCharacterIterator paragraph)
텍스트내에 RUN_DIRECTION 속성이 있는 경우는, 이 속성에 의해 기준 방향 (왼쪽에서 오른쪽, 오른쪽에서 왼쪽)이 정해집니다. 없는 경우는, 기준 방향은 Unicode 쌍방향 알고리즘을 사용해 계산됩니다. 텍스트내에 강할 방향 문자가 없는 경우, 왼쪽에서 오른쪽이 디폴트입니다. 이 속성이 있는 경우는, 단락내의 모든 텍스트에 반드시 적용됩니다.
텍스트내에 BIDI_EMBEDDING 속성이 있는 경우는, 매입 레벨 정보를 나타냅니다. -1 ~ -62 의 0 보다 작은 값은, 레벨의 절대치에서의 오버라이드(override)를 나타냅니다. 1 ~ 62 의 정의 값은, 매입을 나타냅니다. 값이 제로 또는 정의되지 않는 경우는, 기준 방향에 의해 정해지는 기준 매입 레벨이다고 보여집니다.
텍스트내에 NUMERIC_SHAPING 속성이 있는 경우, 이 속성은 쌍방향 알고리즘의 실행전에, 유럽 숫자를 다른 10 진수로 변환합니다. 이 속성이 있는 경우는, 단락내의 모든 텍스트에 반드시 적용됩니다.
paragraph
- 임의의 문자와 단락 속성 정보를 가지는 텍스트의 단락TextAttribute.BIDI_EMBEDDING
,
TextAttribute.NUMERIC_SHAPING
,
TextAttribute.RUN_DIRECTION
public Bidi(char[] text, int textStart, byte[] embeddings, int embStart, int paragraphLength, int flags)
text
- 처리하는 텍스트의 단락이 포함되고 있는 배열textStart
- 단락의 개시의 텍스트 배열에 대한 인덱스embeddings
- 단락의 각 문자의 매입치가 포함되고 있는 배열.
이것이 null 의 경우는, 외부 매입 정보가 없는 것이라고 보여지는embStart
- 단락의 선두의 매입 배열에 대한 인덱스paragraphLength
- 텍스트 및 묻어 배열내의 단락의 길이flags
- 알고리즘을 제어하는 플래그의 컬렉션. 알고리즘은
플래그 DIRECTION_LEFT_TO_RIGHT, DIRECTION_RIGHT_TO_LEFT,
DIRECTION_DEFAULT_LEFT_TO_RIGHT, 및 DIRECTION_DEFAULT_RIGHT_TO_LEFT 를 인식한다.
그 외의 값은 예약이 끝난 상태메소드의 상세 |
---|
public Bidi createLineBidi(int lineStart, int lineLimit)
lineStart
- 단락의 개시부터 행의 개시의 오프셋(offset)lineLimit
- 단락의 개시부터 행의 리밋트의 오프셋(offset)public boolean isMixed()
public boolean isLeftToRight()
public boolean isRightToLeft()
public int getLength()
public boolean baseIsLeftToRight()
public int getBaseLevel()
public int getLevelAt(int offset)
offset
- 레벨을 돌려주는 문자의 인덱스
public int getRunCount()
public int getRunLevel(int run)
run
- 0 으로 getRunCount()
의 사이에 있는, 런의 인덱스
public int getRunStart(int run)
run
- 0 으로 getRunCount()
의 사이에 있는, 런의 인덱스
public int getRunLimit(int run)
run
- 0 으로 getRunCount()
의 사이에 있는, 런의 인덱스
public static boolean requiresBidi(char[] text, int start, int limit)
text
- 테스트 대상의 문자를 포함한 텍스트start
- 테스트 대상의 문자의 범위의 개시 위치limit
- 테스트 대상의 문자의 범위의 리밋트
public static void reorderVisually(byte[] levels, int levelStart, Object [] objects, int objectStart, int count)
objectStart
로부터 objectStart + count
의 index
에 있는 요소는, 텍스트의 각 런이, 레벨 배열 (index - objectStart + levelStart
) 내의 대응하는 요소에 의해 나타나는 레벨이다고 봐, 시각적 순서에 늘어놓고 바꿀 수 있습니다.
levels
- 각 객체의 쌍방향 레벨을 나타내는 배열levelStart
- 레벨 배열내에서의 개시 위치objects
- 시각적 순서에 늘어놓고 바꿀 수 있는 객체의 배열objectStart
- 객체 배열내에서의 개시 위치count
- 늘어놓고 바꾸고 대상의 객체수public String toString()
Object
내의 toString
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.