Nem*_*emo 4 core-graphics ipad ios
如果没有我做任何要求颠倒文本的事情,CGContextShowText就是以这种方式绘制它.它应该是垂直的镜像.
float font_size = 19.;
CGContextSelectFont (context, "Helvetica", font_size, kCGEncodingMacRoman);
CGContextSetTextDrawingMode (context, kCGTextFill);
CGContextSetRGBStrokeColor (context, 255, 0, 0, 0);
CGContextSetRGBFillColor (context, 255, 0, 0, 0);
CGContextSetTextPosition (context, x, y);
CGContextShowText (context, cstring, strlen(cstring));
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?另外为什么这是默认的绘图模式?
谢谢.
当API从上到下呈现给你的cgContext时,这种"颠倒"通常会发挥作用,但不知怎的,你是从下到上绘制的.无论如何,我使用的2线解决方案是:
CGAffineTransform trans = CGAffineTransformMakeScale(1, -1);
CGContextSetTextMatrix(tex->cgContext, trans);
Run Code Online (Sandbox Code Playgroud)
解决此问题的最佳方法是在绘制例程开始时简单地调用它。(确保只调用一次。)
CGAffineTransform transform;
transform = CGAffineTransformConcat(CGContextGetTextMatrix(ctx),
CGAffineTransformMake(1.0, 0.0, 0.0,
-1.0, 0.0, 0.0));
CGContextSetTextMatrix(ctx, transform);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3372 次 |
最近记录: |