MultipleMaster 인터페이스

MultipleMaster 인터페이스

MultipleMaster 인터페이스는 Type 1 Multiple Master 글꼴을 나타내요. 특정 Font 객체가 이 인터페이스를 구현할 수 있어요.

출처: Java API Reference

본문

Multiple Master 글꼴은 여러 디자인 축(design axis)을 가진 글꼴이에요. 예를 들어 폭(width), 무게(weight), 광학 스케일 등을 축으로 삼아, 축 값을 조절해서 다양한 변형 글꼴을 만들 수 있어요.

public interface MultipleMaster

주요 메서드

  • getNumDesignAxes() — Multiple Master 디자인 제어의 수를 반환해요. 디자인 축에는 폭·무게·광학 스케일 등이 포함돼요.
  • getDesignAxisNames() — 각 디자인 축의 이름 배열을 반환해요.
  • getDesignAxisRanges() — 각 축의 디자인 한계를 [from→to] 형태로 교차한 배열을 반환해요.
  • getDesignAxisDefaults() — 각 축의 기본 디자인 값 배열을 반환해요.
  • deriveMMFont(float[] axes) — 지정한 배열에 포함된 디자인 축 값을 기반으로 새 Multiple Master 글꼴 인스턴스를 만들어요.
  • deriveMMFont(float[] glyphWidths, float avgStemWidth, float typicalCapHeight, float typicalXHeight, float italicAngle) — 상세 메트릭 정보에 기반해 새 Multiple Master 글꼴 인스턴스를 만들어요.

사용 흐름

Font 객체가 MultipleMaster를 구현하는지 확인한 뒤, 디자인 축 개수를 조회하고 각 축의 기본값·범위를 확인한 다음, 원하는 축 값으로 deriveMMFont를 호출해 변형 글꼴을 만들 수 있어요.

이 인터페이스는 글꼴 변형(font variation)을 세밀하게 다루고 싶은 고급 텍스트 처리에 주로 쓰여요.

더 알아보기