Tag: nsattributedstring

从NSAttributedString下划线的UITextField只有1像素高?

标签(图片底部)和文本字段(顶部)具有相同的相同的文字。 但看看下划线。 文本字段中只有一个像素高。 这看起来很糟糕。 有谁知道是什么造成这个或如何防止它? – (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { UITextField* textField = [[UITextField alloc]initWithFrame:CGRectMake(100, 100, 600, 200)]; NSMutableAttributedString* string = [[NSMutableAttributedString alloc]initWithString:@"The quick brown fox jumps"]; NSNumber* underlineNumber = [NSNumber numberWithInteger:NSUnderlineStyleSingle]; UIFont* font = [UIFont systemFontOfSize: 50]; [string addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, string.length)]; for (NSInteger i=0; i<20; i++) { if […]

对于lineSpacing和多种颜色的单行文本,UILabel大小不正确

我很确定这实际上是一个UIKit的错误,但想得到一些input,看看我是否在这里丢失了一些愚蠢的东西。 这里是我有的代码: // single line with modified line spacing and 2 colors – broken, line spacing is added to the bottom! UILabel *brokenLabel = [[UILabel alloc] init]; brokenLabel.backgroundColor = [UIColor greenColor]; NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"Just some text"]; [attributedString addAttributes:@{NSForegroundColorAttributeName : [UIColor redColor]} range:[attributedString.string rangeOfString:@"text"]]; attributedString = attributedStringFromAttributedStringWithLineSpacing(attributedString, 20, NSTextAlignmentCenter); brokenLabel.attributedText = attributedString; [brokenLabel […]

归属文本背景上的圆angular是否可能?

我用不同的文字颜色归因于文本。 为了更好的可读性突出显示的文本我使用backgroundcolor。 是否有可能在这个Textarea带来圆angular的CALayer效应? 不是整个区域,而是内部的特殊文本。 我的代码: NSAttributedString *text = [[NSAttributedString alloc] initWithString:@"Highlighted Text" attributes:@{ NSFontAttributeName: [UIFont fontWithName:@"HelveticaNeue" size:10.0f], NSForegroundColorAttributeName: [UIColor lightGrayColor], NSBackgroundColorAttributeName: [UIColor darkGrayColor] }];

NSAttributedString到NSData没有可见@interface为'NSAttributedString'声明select器'RTFDFromRange:documentAttributes:

我想使用RTFDFromRange方法将NSAttributedString转换为NSData 。 得到这个: No visible @interface for 'NSAttributedString' declares the selector 'RTFDFromRange:documentAttributes: 我的代码有什么问题? NSAttributedString *val=self.textview.attributedText; NSData *data = [val RTFDFromRange:NSMakeRange(0, self.textview.text.length) documentAttributes:nil];

NSAttributedString在string末尾改变颜色

这一定是一件容易的事,但我无法弄清楚。 我有一个NSMutableAttributedString,例如,“这是一个testing”。 我想给“testing”一词涂上蓝色,我这样做: NSMutableAttributedString *coloredText = [[NSMutableAttributedString alloc] initWithString:@"This is a test"]; [coloredText addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(10,4)]; 这工作得很好。 但是现在我想把文本颜色设置为黑色,以便在“testing”之后input任何东西。 如果我做: [coloredText addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor] range:NSMakeRange(coloredText.string.length, 1)]; 我得到一个objectAtIndex:effectiveRange:越界的错误。 假定范围超出了string的长度。 如果我做: [coloredText addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor] range:NSMakeRange(coloredText.string.length, 0)]; 错误消失,但在“testing”之后键入仍然是蓝色的。 如何在插入点处设置当前颜色? 欢呼任何input。

在一个UILabel中,是否有可能强制一行不在某个地方中断

我有一个应该是两行的UILabel。 文本被本地化为法文和英文。 我正在设置标签的属性文字属性。 文本由三个附加string构成,如textFragment1,textFragment2和textFragment3。 中间string实际上是用NSTextAttachment创build的图像。 我想确保textFragment2和textFragment3在同一行。 第一个string可能会或可能不会换行取决于它的长度。 问题是我的法文文本目前很短,所以行在textFragment2之后。 我通过在textFragment1的本地化法语文本中添加一个换行符号来暂时解决了这个问题。 虽然我不太喜欢这个解决scheme。 我想知道是否有办法处理textFragment2和textFragment3,以便他们将永远在一起在同一行。

键入'NSAttributedStringKey'(又名'NSString')没有成员'字体'

只是更新了Xcode 9的豆荚,我收到了下面的错误为宇宙 。 键入'NSAttributedStringKey'(又名'NSString')没有成员'字体'

使用换行符附加NSAttributedString会返回格式错误的归因string

我使用NSMutableAttributedString和NSAttributedString以两种不同的字体大小显示标签文本。 我的做法是: NSMutableAttributedString *muAtrStr = [[NSMutableAttributedString alloc]initWithString:@"2"]; NSAttributedString *atrStr = [[NSAttributedString alloc]initWithString:@"days" attributes:@{NSFontAttributeName : [UIFont fontWithName:@"HelveticaNeue-Bold" size:8]}]; [muAtrStr appendAttributedString:atrStr]; 其中返回一个字符大小为12的“2”和字体大小为8的“天”的Attributedstring。 但是,另一个scheme是在2之后添加换行符。我使用下面的代码: NSMutableAttributedString *muAtrStr = [[NSMutableAttributedString alloc]initWithString:@"2"]; NSAttributedString *atrStr = [[NSAttributedString alloc]initWithString:@"\ndays" attributes:@{NSFontAttributeName : [UIFont fontWithName:@"HelveticaNeue-Bold" size:8]}]; [muAtrStr appendAttributedString:atrStr]; 这次属性string应用了全文的属性。 我得到字体大小为8的“2 \ ndays”属性string。

Objective C – 如何从NSAttributedString创buildrtf

我可以从rtfstring转换为使用以下属性的string: NSAttributedString *attributedStr = [[NSAttributedString alloc] initWithData:data options:@{NSDocumentTypeDocumentAttribute:NSRTFTextDocumentType} documentAttributes:nil error:nil]; 现在我怎样才能从归档string转换回rtfstring?

不同的字体大小在同一个标​​签?

是否有可能在同一个UILabel有不同的字体大小或重量? 我可以在故事板中将它作为Attributed标签,但是我需要以编程方式进行。 cell.lblOne.text = [NSString stringWithFormat: @"FontSize15:: %@, FontSize20:: %@",monkey, goat]; 编辑:我看到了一些关于NSAttributedString,但我不能得到它的工作。