Tag: 段落

定义核心文本段落而不使用换行符?

我有一个微不足道的问题,为NSAttributedString中的段落应用正确的顶部和底部间距。 我正在用这段代码来设置段落属性: int sf = sizeof(CGFloat); CTParagraphStyleSetting settings[ParagraphStylesSupported] = { { kCTParagraphStyleSpecifierAlignment, sizeof(QuartzTextAlignment), &style.textAlignment }, { kCTParagraphStyleSpecifierParagraphSpacingBefore, sf, &marginTop}, { kCTParagraphStyleSpecifierParagraphSpacing, sf, &marginBot}, { kCTParagraphStyleSpecifierMinimumLineHeight, sf, &lineHeight}, { kCTParagraphStyleSpecifierLineSpacing, sf, &lineSpacing}, { kCTParagraphStyleSpecifierFirstLineHeadIndent, sf, &style.firstLineIndent}, }; CTParagraphStyleRef paragraphStyle = CTParagraphStyleCreate(settings, ParagraphStylesSupported); [string addAttribute:(NSString*)kCTParagraphStyleAttributeName value:(id)paragraphStyle range:item.range]; CFRelease(paragraphStyle); 文本属性正在按预期应用。 但是段落alignment问题很less: 除非在属性范围的开始处有一个换行符,否则段落不是彼此相邻的位置,而是“内联”的。 当我添加换行符时,段落被正确地放置在另一个之下,但换行符高度被添加到间距'ParagraphSpacing'间隙。 kCTParagraphStyleSpecifierParagraphSpacingBefore还影响段落范围内的换行符。 什么核心文本布局引擎解释为一个段落指标? 是属性string中的每一个换行符?

在没有\ n的UITextView中显示段落

有一个方便的方法来格式化一个相当长的string与段落(如下),使其与\n在它所以textView将显示段落以及? blah blah to @"blah\n\nblah" 谢谢!