GlyphJustificationInfo 클래스

GlyphJustificationInfo 클래스

GlyphJustificationInfo 클래스는 글리프의 정렬(justification) 속성에 대한 정보를 나타내요. 글리프는 하나 이상의 문자의 시각적 표현이에요. GlyphJustificationInfo가 나타내는 네 가지 정렬 속성은 weight(가중치), priority(우선순위), absorb(흡수), limit(한계)예요.

출처: Java API Reference

본문

주요 속성

  • 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) — 글리프의 정렬 속성에 대한 정보를 구성해요.

더 알아보기