颠倒文本 - Quartz/iPhone - CGContextScaleCTM

发布于 2024-07-29 14:11:18 字数 232 浏览 7 评论 0原文

我使用左下角而不是左上角在 iPhone 上绘制,使用以下方法:

CGContextTranslateCTM(context, 0.0, 200.0);
CGContextScaleCTM(context, 1.0, -1.0);

虽然这对于更改我的原点来绘制图表效果很好,但标签显示颠倒。

如何使用我的坐标系,同时获得正常的直接文本来正确标记我正在绘制的图表?

I am using bottom left corner instead of top left to draw on iPhone using the following:

CGContextTranslateCTM(context, 0.0, 200.0);
CGContextScaleCTM(context, 1.0, -1.0);

While this works fine for changing my origin to draw a chart but labeling appears upside down.

How do use my coordinate system but also get normal straight text to properly label the chart I am drawing ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

酸甜透明夹心 2024-08-05 14:11:19

使用 CGContextSaveGStateCGContextRestoreGState 来确保
CTM 缩放适用于您的图形而不是文本。

Use CGContextSaveGState and CGContextRestoreGState to make sure
that the CTM scaling applies to your graphics and not your text.

虚拟世界 2024-08-05 14:11:18

是的,我最近必须解决同样的问题。 诀窍是在写入标签之前短暂撤消“反转”:

    NSPoint p = NSMakePoint(x+5,5);
CGContextSaveGState(ctx);  
CGContextTranslateCTM(ctx, 0, b.origin.y+y+25); // Flip temporarily for text 
CGContextScaleCTM(ctx, 1.0, -1.0);  
[string drawAtPoint: p withAttributes:nil];    // Draw your strings
CGContextRestoreGState(ctx);                   // Flip back

注意 b.origin.y 值是可视区域的高度,x 和 y 是标签的位置

Yes ive just recently had to solve the same problem. The trick is to briefly undo the "inversion" just before writing the labels:

    NSPoint p = NSMakePoint(x+5,5);
CGContextSaveGState(ctx);  
CGContextTranslateCTM(ctx, 0, b.origin.y+y+25); // Flip temporarily for text 
CGContextScaleCTM(ctx, 1.0, -1.0);  
[string drawAtPoint: p withAttributes:nil];    // Draw your strings
CGContextRestoreGState(ctx);                   // Flip back

Note the b.origin.y value is the height of the viewable area, x and y are the positions of the labels

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文