似乎函数CGAffineTransformMakeRotation和CGAffineTransformMake无法一起工作。
CGContextSetTextMatrix (context, CGAffineTransformMakeRotation (degreesToRadians(40)));
CGContextSetTextMatrix(context, CGAffineTransformMake(1.0,0.0, 0.0, -1.0, 0.0, 0.0));
我得到了这个
CGContextSetTextMatrix (context, CGAffineTransformMakeRotation (degreesToRadians(40)));
CGContextSetTextMatrix(context, CGAffineTransformMake(1.0,0.0, 0.0, -1.0, 0.0, 0.0));
我得到了这个
我想要实现的是单词是可读的并且与X轴有40度。
谢谢!
答案 0 :(得分:1)
CGContextSetTextMatrix设置文本矩阵,每次调用替换前一个矩阵,它不会组合它们。您需要组合矩阵,然后设置文本矩阵:
CGAffineTransform ctm = CGAffineTransformMake(1, 0, 0, 1, 0, 0);
ctm = CGAffineTransformTranslate(ctm, xTextPos, yTextPos);
ctm = CGAffineTransformScale(ctm, 1, -1);
ctm = CGAffineTransformRotate(ctm, -degreesToRadians(40));
CGContextSetTextMatrix(ctx, ctm);