翻译图形上下文

时间:2012-03-23 05:45:42

标签: iphone ios cocoa-touch core-graphics

在下面的代码中,我正在尝试翻译或更多我正在使用CoreText绘制的图形上下文。当CoreText使用左下角的原点时,前四行代码会翻转坐标系。在翻转坐标系后,我需要将图形上下文向下移动y轴textFrameOriginY。但是我正在使用的以下代码不起作用。我不熟悉图形,并且想知道是否有什么我做错了吗?

    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetTextMatrix(context, CGAffineTransformIdentity);
    CGContextTranslateCTM(context, 0, self.bounds.size.height);
    CGContextScaleCTM(context, 1.0, -1.0);

    CGContextTranslateCTM(context, 0, textFrameOriginY);

2 个答案:

答案 0 :(得分:2)

在你翻转坐标系统之后,向下是负数而向上是正数,所以你的第二个翻译应该是-textFrameOriginY?

假设这是在-drawRect: - 记住你不能在你的界限之外绘制,这应该可以帮助你调试问题......

答案 1 :(得分:1)

这一行应该是,

CGContextTranslateCTM(context, 0, viewHeight-textFrameOriginY);

进行适当的放置。