내가 (아이폰)이 코드를 실행하면 :사용자 친화적 인 UIFont`fontNamesForFamilyName :`
...
Font Family: Georgia
Georgia-BoldItalic
Georgia-Bold
Georgia-Italic
Georgia
Font Family: Helvetica Neue
HelveticaNeue-BoldItalic
HelveticaNeue-Light
HelveticaNeue-Italic
HelveticaNeue-UltraLightItalic
HelveticaNeue-CondensedBold
HelveticaNeue-MediumItalic
HelveticaNeue-Thin
HelveticaNeue-Medium
HelveticaNeue-ThinItalic
HelveticaNeue-LightItalic
HelveticaNeue-UltraLight
HelveticaNeue-Bold
HelveticaNeue
HelveticaNeue-CondensedBlack
Font Family: Gill Sans
GillSans
GillSans-Italic
...
당신은 각 글꼴 가족을 볼 수 있습니다
NSArray *names = [UIFont familyNames];
NSLog(@"Font FamilyNames");
for (NSString *name in names) {
NSLog(@"Font Family: %@",name);
NSArray *fontFaces = [UIFont fontNamesForFamilyName:name];
for (NSString *fname in fontFaces) {
NSLog(@" %@",fname);
}
}
을 나는이 출력 (요약 된)를 얻을 다양한 글꼴을 가지고 있지만 글꼴 이름은 사용자 친화적 인 이름입니다. 예를 들어, 텍스트 편집기는 더 나은 방법을 제시한다
어떻게 안정적인 방법으로는 각 글꼴의 이름을 가져 (이것은 모든 글꼴, iOS에서 아직 사용할 수없는 경우에도 글꼴에서 작동 의미) 할 수 있습니다 TextEdit과 같은가요?
마음에 오는 유일한 것은 에 Condensed Bold
및 HelveticaNeue-UltraLightItalic
에 HelveticaNeue-CondensedBold
를 돌려, 각각의 폰트 페이스 명을 구문 분석하는 것입니다.
Font Family: Bodoni 72
BodoniSvtyTwoITCTT-Book
BodoniSvtyTwoITCTT-Bold
BodoniSvtyTwoITCTT-BookIta
: 그러나 ... 텍스트 편집기가
HelveticaNeue-UltraLightItalic
로
UltraLight Italic
하지 제시하고, 나는이 방법이 모든 글꼴 작동 확실하지 않다 나의 생각과 잘 작동하지 않을 것입니다 글꼴
예를 알 수 있습니다
(Bodoni 72
! = BodoniSvtyTwoITCTT
)
Font Family: Times New Roman
TimesNewRomanPS-BoldItalicMT
TimesNewRomanPSMT
TimesNewRomanPS-BoldMT
TimesNewRomanPS-ItalicMT
(Times New Roman
! = TimesNewRomanPS
어떤 그 MT와이야?)
기타 문제 : 글꼴 이름에 Regular
이 포함되어 있지 않지만 사용자가 옵션에서 볼 수있는 것으로 기대됩니다 (TextEdit 스크린 샷 참조).
Hi Alex, 이 문제에 대한 좋은 해결책을 찾았습니까? 나는 똑같은 문제가 있으며, 파싱에 대한 언급은 한계가 있음을 언급합니다. –
@FreekSanders 불행히도, 아니요, 나는 파싱하지 않고 그대로 이름을 남겨야했습니다 ... – Alex
빠른 응답에 감사드립니다. 나는 또한 그대로 이름을 남겨두고있다. –