GlyphJustificationInfo 클래스
GlyphJustificationInfo 클래스
GlyphJustificationInfo 클래스는 글리프의 정렬(justification) 속성에 대한 정보를 나타내요. 글리프는 하나 이상의 문자의 시각적 표현이에요. GlyphJustificationInfo가 나타내는 네 가지 정렬 속성은 weight(가중치), priority(우선순위), absorb(흡수), limit(한계)예요.
본문
주요 속성
- weight — 줄에서 글리프의 전체 '무게'예요. 일반적으로 글꼴 크기에 비례해요. 무게가 큰 글리프는 공간 변화를 그만큼 더 많이 할당받아요.
- priority — 이 글리프가 사용되는 정렬 단계를 결정해요. 같은 우선순위의 모든 글리프가 다음 우선순위 글리프보다 먼저 검사돼요. 공간 변화를 한계를 넘지 않고 이 글리프들에 할당할 수 있으면, 다음 우선순위 글리프는 검사하지 않아요. 네 가지 우선순위는
kashida,whitespace,interchar,none이에요.KASHIDA가 가장 먼저 검사되고NONE이 마지막이에요. - absorb — 글리프가 공간 변화를 모두 흡수하는지 결정해요. 주어진 우선순위 안에서 어떤 글리프가 공간 변화를 모두 흡수할 수 있어요. 이런 글리프가 있으면 이후 우선순위 글리프는 검사되지 않아요.
- limit — 글리프가 변할 수 있는 최대·최소량을 결정해요. 글리프의 왼쪽·오른쪽은 다른 한계를 가질 수 있어요.
public final class GlyphJustificationInfo
extends Object
각 GlyphJustificationInfo는 두 가지 메트릭 집합을 나타내는데, 성장(growing)과 수축(shrinkings)이에요. 성장 메트릭은 줄의 글리프를 벌려 더 넓은 폭에 맞출 때 사용하고, 수축 메트릭은 글리프를 모아 더 좁은 폭에 맞출 때 사용해요.
필드
static final int PRIORITY_INTERCHAR— 두 번째로 낮은 정렬 우선순위static final int PRIORITY_KASHIDA— 가장 높은 정렬 우선순위static final int PRIORITY_NONE— 가장 낮은 정렬 우선순위static final int PRIORITY_WHITESPACE— 두 번째로 높은 정렬 우선순위final boolean growAbsorb— 성장할 때 이 글리프가 이 우선순위와 더 낮은 우선순위의 여분 공간을 모두 흡수하는지final float growLeftLimit/growRightLimit— 왼쪽·오른쪽이 성장할 수 있는 최대량final boolean shrinkAbsorb— 수축할 때 남은 수축을 모두 흡수하는지final float shrinkLeftLimit/shrinkRightLimit— 왼쪽·오른쪽이 수축할 수 있는 최대량(양수)final int growPriority/shrinkPriority— 성장·수축할 때의 우선순위final float weight— 글리프의 무게
생성자
GlyphJustificationInfo(float weight, boolean growAbsorb, int growPriority, float growLeftLimit, float growRightLimit, boolean shrinkAbsorb, int shrinkPriority, float shrinkLeftLimit, float shrinkRightLimit) — 글리프의 정렬 속성에 대한 정보를 구성해요.