Как установить другой шрифт для UILabel, в котором есть текст, содержащий как китайские, так и английские символы отдельно? - PullRequest
0 голосов
/ 11 сентября 2011

У меня есть UILabel с текстом, содержащим как китайские, так и английские символы,

Теперь я хочу установить шрифт для китайского и другого шрифта для английского,

как это сделать?

Ответы [ 4 ]

3 голосов
/ 11 сентября 2011

Есть несколько вещей, которые могут вас заинтересовать:

OHAttributedLabel

и TTTAttributedLabel

OHAttributedLabelостается способным работать со смешанными шрифтами, цветом, размером, ...

2 голосов
/ 11 сентября 2011

Как правило, одна метка может иметь только один шрифт.Тем не менее, если вы хотите показать другой шрифт для разных языков, вы можете сохранить разные языковые строки в разных ярлыках и расположить их так, как хотите.

См. Это, чтобы определить размер ваших ярлыков.

Изменение размера UITableViewCell до высоты UILabel динамически

, и это также полезно.

Как обернуть текст в UITableViewCell без пользовательской ячейки

1 голос
/ 11 сентября 2011

Я не верю, что это возможно.Свойство font, установленное в UILabel, будет применяться ко всей строке, указанной в свойстве text этого UILabel.

0 голосов
/ 05 февраля 2013

Я не пробовал использовать китайский шрифт, но вы можете использовать следующий код для установки различных / нескольких шрифтов и других свойств на Label, используя NSMutableAttributedString. Фолл мой код:

 UIFont *ArialFont = [UIFont fontWithName:@"arial" size:18.0];
 NSDictionary *arialdict = [NSDictionary dictionaryWithObject: ArialFont forKey:NSFontAttributeName];    
 NSMutableAttributedString *AattrString = [[NSMutableAttributedString alloc] initWithString:title attributes: arialdict];

 UIFont *VerdanaFont = [UIFont fontWithName:@"verdana" size:12.0];
 NSDictionary *veradnadict = [NSDictionary dictionaryWithObject:VerdanaFont forKey:NSFontAttributeName];
 NSMutableAttributedString *VattrString = [[NSMutableAttributedString alloc]initWithString: newsDate attributes:veradnadict];    
 [VattrString addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor] range:(NSMakeRange(0, 15))];

 [AattrString appendAttributedString:VattrString];


 lblText.attributedText = AattrString;

Обратите внимание, что lblText - это UILabel, выход как владелец файла. Можно продолжать добавлять столько NSMutableAttributedString, сколько он хочет ..

Также обратите внимание, что я добавил в свой проект шрифт verdana & arial и добавил для этого список.

...