Tag: nsattributedstring

从用户input的属性string中查找属性

在我的应用程序中,用户将键入任何他想要的,他可以使文本粗体,斜体和下划线。 我可以做文本 – 粗体,斜体和下划线。 但我需要从用户input的属性string中find哪些文本(或字符)是粗体,斜体和下划线 。 任何types的链接,教程,代码将是很大的帮助。 编辑: 我需要这样的结果… 如果字符6是斜体,则打印斜体。 如果字符14是粗体,则打印粗体。 我需要将Calibri字体族中的所有文本转换为HelveticaNeue字体族,而不更改其属性。

NSAttributedString上标样式

我想在一个文本块(合法免责声明,自然;))上NSAttributedString所有的®字符的实例,默认方式NSAttributedString不是很好。 如果我只是让字符被使用,而且只使用未经修改的NSString ,它将被渲染成与大写字母相同的大小,并且大致位于基线。 如果我将上标属性添加到NSAttributedString ,如下所示: [attrStr setAttributes:@{(NSString *)kCTSuperscriptAttributeName : @1} range:NSMakeRange(locationOfReg, 1)]; angular色被抬离基线,其大小不变,但行间距现在受到影响,因为升起的angular色会侵入上面的行。 为了显示: 我在Photoshop中创build了这个图像,通过减less字符的大小和移动基线来实现所需的位置。 我知道如何改变iOS的字体大小,但改变基线似乎更棘手。 有关如何实现这一目标的任何build议? 编辑:我想我可以使用上标属性作为一种方法来改变基线。 现在想出一种方法来获取当前的字体大小,并随后减less它以允许在不同大小的文本块上使用相同的方法。

具有两种不同字体大小的NSAttributedString的例子?

NSAttributedString对我来说是非常NSAttributedString 。 我想设置一个UILabel文本不同的大小,我收集NSAttributedString是要走的路,但我不能得到任何地方与此文件。 如果有人能帮我一个具体的例子,我会喜欢它。 比如说,我想要的文字是: (in small letters:) "Presenting The Great…" (in huge letters:) "HULK HOGAN!" 有人可以告诉我该怎么做吗? 甚至,我可以为自己学习的一个简单而简单的参考? 我发誓我试图通过文档来了解这一点,甚至通过堆栈溢出的其他例子,我只是没有得到它。

Swift-在具有自己样式的HTMLstring上更改字体

我正在从Wordpress API中获取一个HTMLstring,并将其parsing为一个Attributed String以在我的应用程序中显示它。 由于string有自己的样式,它显示不同的字体和大小,这是影响我们的deviseselect。 我想要做的是改变整个属性string的字体和大小。 我试图在属性string的选项中这样做,但它什么都不做: let attributedT = try! NSAttributedString( data: nContent!.decodeHTML().data(using: String.Encoding.unicode, allowLossyConversion: true)!, options: [ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSFontAttributeName: UIFont(name: "Helvetica", size: 16.0)!], documentAttributes: nil) contentLbl.attributedText = attributedT 有没有人有任何想法如何实现这一目标? PS我知道我可以添加一个CSS标签的string的开始或结束,但这会覆盖其他的风格呢? 另外,如果这是一个有效的解决scheme,请提供一个关于如何做的样本?

在UIPasteBoard中复制NSAttributedString

如何复制剪贴板中的NSAttributedString ,以允许用户粘贴或以编程方式粘贴(使用- (void)paste:(id)sender ,从UIResponderStandardEditActions协议)。 我试过了: UIPasteboard *pasteBoard = [UIPasteboard generalPasteboard]; [pasteBoard setValue:attributedString forPasteboardType:(NSString *)kUTTypeRTF]; 但是这个崩溃与: -[UIPasteboard setValue:forPasteboardType:]: value is not a valid property list type' 这是可以预料的,因为NSAttributedString不是一个属性列表值。 如果用户将粘贴板的内容粘贴到我的应用程序中,我想保留属性string的所有标准和自定义属性。

循环访问NSAttributedString属性以增加字体

我所需要的是循环遍历NSAttributedString所有属性,并增加它们的字体大小。 到目前为止,我已经到了成功循环和操作属性的地步,但是我不能保存回NSAttributedString 。 我注意到的线路不适合我。 如何保存? NSAttributedString *attrString = self.richTextEditor.attributedText; [attrString enumerateAttributesInRange: NSMakeRange(0, attrString.string.length) options:NSAttributedStringEnumerationReverse usingBlock: ^(NSDictionary *attributes, NSRange range, BOOL *stop) { NSMutableDictionary *mutableAttributes = [NSMutableDictionary dictionaryWithDictionary:attributes]; UIFont *font = [mutableAttributes objectForKey:NSFontAttributeName]; UIFont *newFont = [UIFont fontWithName:font.fontName size:font.pointSize*2]; [mutableAttributes setObject:newFont forKey:NSFontAttributeName]; //Error: [self.richTextEditor.attributedText setAttributes:mutableAttributes range:range]; //no interfacce for setAttributes:range: }];

从NSAttributedstring提取UIImage

我正在做的是: NSATTRIBUTE STRING = NSSTRING + UIIMAGE的; NSDATA = NSATTRIBUTED STRING; 此外,我能够将nsdata转换为nsattributedstring NSATTRIBUTED STRING = NSDATA: 然后从NSAttributedstring中提取嵌套 NSSTRING = [NSATTRIBUTED STRING string]; 查询: 我怎样才能从NSATTRIBUTED STRING获得图像; UIIMAGE =来自NSATTRIBUTED STRING; ARRAYOFIMAGE =来自NSATTRIBUTED STRING;