В последнее время я пытался применить комбинации NSFontAttributes к NSMutableAttributedString, и я просто не могу найти подробное объяснение того, как это сделать, не удаляя другие атрибуты.
Я искал кучу и нашел этот вопрос, касающийся того, как это сделать с HTML, а затем этот вопрос о том, как найти, где текст выделен жирным шрифтом или курсивом, но ничего не о том, как на самом деле это сделать.
В настоящее время я пытаюсь отформатировать строки следующим образом:
Курсив: [mutableAttributedString addAttribute: NSFontAttributeName value:[fontAttributes valueForKey:CXItalicsFontAttributeName] range:r];
Полужирный: [mutableAttributedString addAttribute:NSFontAttributeName value:[fontAttributes valueForKey:CXBoldFontAttributeName] range:r];
Где константы CXItalicsFontAttributeName
и CXBoldAttributeName
извлекают следующие два значения из словаря:
UIFont *italicsFont = [UIFont fontWithName:@"Avenir-BookOblique" size:14.0f];
UIFont *boldFont = [UIFont fontWithName:@"Avenir-Heavy" size:14.0f];
Я знаю, что это не может быть правильным способом форматирования, так как стандартные атрибуты NSAttributedString не включают в себя ItalicsFontAttribute или BoldFontAttribute, но я не могу найти правильный способ сделать это. Кто-нибудь может мне помочь?