대담한 글꼴 UI 이름을 가진 UIFont을 얻는 데 사용하려는 방법은 일부 글꼴에서만 작동하는 것 같습니다. (아이폰 OS 8.1 시뮬레이터)일부 iOS 글꼴 모음이 UIFontDescriptorTraitBold를 지원하지 않는 이유는 무엇입니까?
UIFont* font = [UIFont fontWithName:@"TimesNewRomanPS-BoldMT" size:12];
NSLog(@"A: Font name: %@", [font fontName]);
// desired method works for Helvetica Neue
UIFontDescriptor *desc = [[UIFontDescriptor alloc] init];
desc = [desc fontDescriptorWithFamily:@"Helvetica Neue"];
desc = [desc fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitBold];
font = [UIFont fontWithDescriptor:desc size:12];
NSLog(@"B: Font name: %@", [font fontName]);
// desired method fails for Times New Roman
desc = [[UIFontDescriptor alloc] init];
desc = [desc fontDescriptorWithFamily:@"Times New Roman"];
NSLog(@"desc: %@", desc);
desc = [desc fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitBold];
NSLog(@"desc bold: %@", desc);
인쇄 : 예를 들어
A: Font name: TimesNewRomanPS-BoldMT
B: Font name: HelveticaNeue-Bold
desc: UICTFontDescriptor <0x7f9be0d05e80> = { NSFontFamilyAttribute = "Times New Roman"; }
desc bold: (null)
이 버그, 아니면 그것은 (실제로는 대담한 변형이있는) 모든 글꼴 가족을 위해 작동하도록 설계되지 않는 이유는 무엇입니까? 나는 정말로 "굵게"또는 그런 것을 찾으려는 글꼴 이름을 분석하도록 강요 받기를 원하지 않는다.
나는이 fontDescriptorWithSymbolicTraits의 또 다른 피해자입니다. iOS7의 모든 글꼴에서 완벽하게 작동했기 때문에 부끄러운 일이었습니다. 그 동안 임시 해결책을 찾았습니까? 나는 "-Black | -Bold | -Italic | -Oblique"에 대한 글꼴 이름을 구문 분석하고 싶지 않습니다. – Bluezen