Stu*_*ing 4 text core-graphics objective-c quartz-graphics ios
我正在使用Quartz显示文本.这是我的代码:
CGContextRef myContext = UIGraphicsGetCurrentContext();
CGContextSelectFont(myContext, "Helvetica", 12, kCGEncodingMacRoman);
CGContextSetCharacterSpacing(myContext, 8);
CGContextSetTextDrawingMode(myContext, kCGTextFillStroke);
CGContextSetRGBFillColor(myContext, 0, 0, 0, 1);
CGContextSetRGBStrokeColor(myContext, 0, 0, 0, 1);
CGContextSetTextMatrix(myContext,CGAffineTransformMake(1, 0, 0, -1, 0, 0));
CGContextShowTextAtPoint(myContext, textOrigin.x, textOrigin.y,[way.name UTF8String],[way.name length]);
Run Code Online (Sandbox Code Playgroud)
这会以正确的方向显示我的文本,但是我还需要使用向文本添加旋转CGAffineTransformMakeRotation(angle);.我似乎无法弄清楚如何将两个仿射变换应用于文本矩阵,但没有人覆盖另一个.任何帮助都会很棒.
ken*_*ytm 12
您可以将矩阵与CGAffineTransformConcat结合使用,例如
CGAffineTransform finalTransf = CGAffineTransformConcat(t1, t2);
Run Code Online (Sandbox Code Playgroud)
如果您只需要将旋转应用于现有矩阵,请使用CGAffineTransformRotate,例如
CGAffineTransform t = CGAffineTransformMake(1, 0, 0, -1, 0, 0);
CGAffineTransform t = CGAffineTransformRotate(t, M_PI/2);
CGContextSetTextMatrix(myContext, t);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4052 次 |
| 最近记录: |