2014-02-12 97 views
0

我一直在關注如何用iOS7的新功能替換下面的代碼。[NSString drawAtPoint:指定withAttributes:dictOfAttributes]; - 繪製文字上下顛倒

折舊功能是CGContextSelectFontCGContextShowTextAtPoint

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 
              }]; 

然而使用該解決方案上面繪製文本與無角倒掛。有任何想法嗎?

+0

這個問題不是鏈接的問題的重複,因爲那不能回答問題如何避免顛倒的文本 – fishinear

回答

0

對於CGContextSelectFont你應該檢查出this answer,而對於CGContextShowTextAtPoint你需要看看this

理想情況下,您應該查看棄用說明的文檔。

+0

這不是問題的答案,因爲鏈接的答案不能解釋如何避免顛倒的文字 – fishinear