2012-02-19 56 views
0

我使用以下函數將nsstring轉換爲圖像。iPhone:使用自動換行從NSString創建圖像

-(UIImage *)imageFromText:(NSString *)text FontName:(UIFont *)font 
{ 
    // set the font type and size 
    //UIFont *font = [UIFont systemFontOfSize:20.0]; 
    CGSize size = [text sizeWithFont:font]; 

    UIGraphicsBeginImageContext(size); 

    [text drawAtPoint:CGPointMake(0.0, 0.0) withFont:font]; 

    // transfer image 
    CGContextSetShouldAntialias(UIGraphicsGetCurrentContext(), YES); 
    CGContextSetAllowsAntialiasing(UIGraphicsGetCurrentContext(), YES); 

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext();  

    return image; 
} 

它的效果很好。問題是,當字符串包含長文本時,它會創建一個寬度過大的圖像。如果文本超出範圍,我想要應用自動換行功能。

那麼如何創建一個圖像與NSString的自動換行。請建議

回答

2

您需要在NSString上調用drawInRect:withAttributes:方法。