문제

나는 사용 중입니다 CGContextShowText 텍스트를 표시하지만 사용하여 회전 할 때 CGAffineTransformation, 회전 축은 왼쪽에 있으며, 그린 텍스트의 중앙이 아니라 내가 사용하는 코드는 다음과 같습니다.

CGContextSaveGState(context);

CGContextSelectFont(context, "Helvetica", 20, kCGEncodingMacRoman);
CGContextSetCharacterSpacing (context, 1);
CGContextSetRGBFillColor (context, 0, 0, 0, 1);
CGAffineTransform xform = CGAffineTransformMake(
    sin(DegreesToRadians(angle)), cos(DegreesToRadians(angle)),
    cos(DegreesToRadians(angle)), -sin(DegreesToRadians(angle)),
    0,  0);

CGContextSetTextDrawingMode (context, kCGTextFill); 

CGPoint degreeDisplayPoint = CGPointMake(100,100);
CGContextShowTextAtPoint(context, degreeDisplayPoint.x, degreeDisplayPoint.y, [angleStringWithDegree cStringUsingEncoding:NSMacOSRomanStringEncoding], [angleStringWithDegree length]); 

CGContextRestoreGState(context);

어떤 아이디어?

도움이 되었습니까?

해결책

중앙이 (0, 0)에 있도록 물체를 번역 한 다음 회전 한 다음 원하는 위치로 다시 번역하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top