我一直在關注如何用iOS7的新功能替換下面的代碼。[NSString drawAtPoint:指定withAttributes:dictOfAttributes]; - 繪製文字上下顛倒
折舊功能是CGContextSelectFont
和CGContextShowTextAtPoint
。
CGContextTranslateCTM(pdfContext, 0, mainView.frame.size.height);
CGContextScaleCTM(pdfContext, 1, -1);
CGRect newFrame = frame;
newFrame.origin.y = (mainView.frame.size.height - frame.origin.y);
frame = newFrame;
UIFont *font = [str attribute:NSFontAttributeName atIndex:0 effectiveRange:NULL];
const char *fontName = [font.fontName UTF8String];
CGContextSelectFont(pdfContext, fontName, font.pointSize, kCGEncodingMacRoman); // DEPRECIATED
CGContextSetTextDrawingMode(context, kCGTextFill);
CGContextSetFillColorWithColor(pdfContext, label.textColor.CGColor);
CGContextSetStrokeColorWithColor(pdfContext, label.textColor.CGColor);
CGAffineTransform transform = CGAffineTransformMakeRotation(-(M_PI_4 * 0.7));
CGContextSetTextMatrix(pdfContext, transform);
CGContextShowTextAtPoint(context, frame.origin.x, frame.origin.y, [label.text UTF8String], [label.text length]); // DEPRECIATED
編輯://
我知道我需要使用[NSString drawAtPoint:aPoint withAttributes:dictOfAttributes];
CGContextSetTextDrawingMode(pdfContext, kCGTextFill);
[[UIColor blackColor] setFill];
[label.text drawAtPoint:CGPointMake(frame.origin.x, frame.origin.y)
withAttributes:@{NSFontAttributeName:font
}];
然而使用該解決方案上面繪製文本與無角倒掛。有任何想法嗎?
這個問題不是鏈接的問題的重複,因爲那不能回答問題如何避免顛倒的文本 – fishinear