首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSLayoutManager为NSLayoutManager绘制drawGlyphsForGlyphRange:atPoint:

NSLayoutManager为NSLayoutManager绘制drawGlyphsForGlyphRange:atPoint:
EN

Stack Overflow用户
提问于 2014-02-14 03:47:19
回答 1查看 1.1K关注 0票数 0

NSLayoutManager类中的函数drawGlyphsForGlyphRange:atPoint:是如何实现的?我知道它是由NSTextView调用的,然后调用fillBackgroundRectArray:count:forCharacterRange:color:

但是它如何确定指定字形范围的backgroundcolor呢?

EN

回答 1

Stack Overflow用户

发布于 2014-02-27 17:46:19

你还有另一个字形背景的调用。您可以使用

代码语言:javascript
复制
- (void)drawBackgroundForGlyphRange:(NSRange)glyphsToShow atPoint:(CGPoint)origin;

更新:

我在UIView的drawRect中是这样使用它的。

代码语言:javascript
复制
 NSRange glyphRange = [layoutManager glyphRangeForTextContainer:textContainer];
            if (glyphRange.location != NSNotFound)
            {
                [layoutManager drawBackgroundForGlyphRange:glyphRange atPoint:label.frame.origin];                
                [layoutManager drawGlyphsForGlyphRange:glyphRange atPoint:label.frame.origin];
            }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21764082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档