1

我有一个非常奇怪的问题。当我偏移我用来绘制我的框架/矩形时NSAttributedString

我的文字消失了。任何想法为什么?这是具有 40 px 简单偏移的图像。

r.size = [self.text boundingRectWithSize:r.size
                                     options:NSStringDrawingUsesLineFragmentOrigin
                                     context:nil].size;
    r.origin.y +=40;
    [[UIColor orangeColor] setFill];
    CGContextFillRect(ctx, r);
    [self.text drawInRect:r];

结果:

在此处输入图像描述

这里没有偏移量。 在此处输入图像描述

如何在给定的偏移量处绘制 AttributedText?

4

1 回答 1

5

我不知道为什么这个问题还没有得到解决。这是 NSAttributedString API 的一个严重问题,我希望 Apple 尽快承认,无论是在文档中还是通过修补实现。

目前,您可以通过在绘制字符串之前翻译图形上下文来解决此问题。

CGContextRef context = whatever;
CGContextSaveGState(context);
CGContextTranslateCTM(context, x, y);
// draw here
CGContextRestoreGState(context);
于 2013-10-25T15:52:49.853 回答