2016-10-06 10 views
0

나는 NSFont의 크기, 가족, 특성을 수정하고 싶습니다. NSFont를 수정하는 관용적 인 방법

은 내가 ( convertFont:toFamily 또는 convertFont:toSize 예를 들어, 사용) 그렇게 할 NSFontManager를 사용할 수 있다는 것을 발견,하지만 난 한 번에 모든 변경 몇 가지 가능성이있을 것이라고 의심 (내가 convertFont:toFamily:toSize:toHaveTrait 같은 것을 상상). 그러나, 나는 그런 것을 발견하지 못했고, 그래서 나는 현재 단계적인 변형을하고있다.

내가 고려한 또 다른 사항은 NSFontDescriptor입니다. 그러나, 이미 NSFont (NSFont -> NSFontDescriptor -> modified NSFontDescriptor -> modified NSFont)가 시작되면 더 사용하기가 복잡해 보입니다 (NSFont -> converted NSFont보다 나에게 더 자세한 정보가 표시됨).

그렇다면 이상적인 방법으로 NSFont을 변환 할 수 있습니까? 그리고 그렇다면 무엇입니까?

답변

1

글꼴 설명자는이 문제를 해결하는 일반적인 방법입니다. 26:00 경 시작하는 WWDC 2013의 Using Fonts with Text Kit을 참조하십시오 (이 설명은 UIKit에 초점을 맞추었지만 많은 원칙이 AppKit에도 적용됩니다). NSFontManager은 대화 형 글꼴 선택기 UI (특히 글꼴 패널)와 함께 작동하도록 설계되었습니다. 사용자가 선택한 글꼴 (UI 유형)으로 상호 작용하는 경우에는 NSFontManager을 사용해야하지만 대부분의 경우 사용자가 다양한 옵션을 선택하거나 선택 취소 할 때 단편적으로 수정해야합니다. 사용자와 독립적으로 글꼴을 조작하는 경우 글꼴 설명자를 사용하고 싶을 수 있습니다. 특히 실수로 글꼴 패널을 수정하지 않아도됩니다.