내 고객이 영어로만 맞춤 TTF 글꼴을 제공했습니다. 따라서 TTF를 영어로만로드하고 다른 언어로는 사용 가능한 시스템 글꼴로 대체해야합니다.영어 버전에만 글꼴을 등록하려면 어떻게합니까?
나는 다음과 같은 단계를하고있는 중이 야 : 내 앱
- 등록 글꼴. Resources 폴더로 복사하고 프로젝트에 추가하십시오.
글꼴 이름을로드하는 중입니다.
NSMutableDictionary * aTitleAttributes = [[[NSMutableDictionary alloc] initWithObjectsAndKeys: [NSFont fontWithName:CP_FONT_NAME size:[NSFont systemFontSize]], NSFontAttributeName, aParagraphStyle, NSParagraphStyleAttributeName, nil] autorelease];
하지만 모든 언어에 대해이 방법으로 글꼴을로드하고 있기 때문에이, 또 다른 문제로 결과를 내 현지화 텍스트는 영어 보인다. 따라서 나는 그래서 아무도 나를 앱 글꼴 등록과 권리 내가 뭐하는 거지 무엇이든 실현하는 데 도움이 될 수 있습니다
NSFont *font = nil;
If (currentLocaleIsEnglish()) {
/// font to load my custom TTF
}
Then use [NSFont fontwithName:font ...]
같은 몇 가지 조건을한다고 생각합니다. 그렇다면 영어 폰트에만 내 폰트를 어떻게 등록 할 수 있습니까? 다른 로케일의 경우이 글꼴을 사용할 수 없으므로
NSFont::fontWithName
은 nil을 반환하고 자동으로 SystemFont로 폴백하므로 내 로캘이 올바르게 표시됩니다.
그렇지 않으면 위에서 언급 한 것과 같은 조건이 있어야합니다. 그렇다면 어떻게 currentLocale이 영어인지를 찾기위한 API를 작성할 수 있습니까?
'NSFont :: fontWithName'과 같은 것이 없습니다. 올바른 메소드 시그니처는'+ [NSFont fontWithName :]'입니다. +는 클래스 메소드임을 나타내고 +는 하나의 인수를 취하는 것을 나타냅니다. –