2009-10-30 20 views
6

イメージにテキストを追加して1つのイメージとして表示する方法。 写真ライブラリから画像を選択し、それにテキストを書き込んで1枚の画像として保存したいのですが、だれに対処すればよいでしょうか?UIImageにテキストを追加

答えて

6

私はうまくいけばそれが役立つ、UIImageにテキストを追加するには、次のコードを使用している

UIImage *img = [self drawText:@"Your String" 
           inImage:[UIImage imageNamed:@"empty_image.png"] 
           atPoint:CGPointMake(15, 25)]; 



-(UIImage*) drawText:(NSString*) text 
      inImage:(UIImage*) image 
      atPoint:(CGPoint) point 
{ 

    NSMutableAttributedString *textStyle = [[NSMutableParagraphStyle defaultParagraphStyle] mutableCopy]; 
    textStyle = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@",text]]; 

    // text color 
    [textStyle addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor] range:NSMakeRange(0, textStyle.length)]; 

    // text font 
    [textStyle addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:20.0] range:NSMakeRange(0, textStyle.length)]; 

    UIGraphicsBeginImageContext(image.size); 
    [image drawInRect:CGRectMake(0,0,image.size.width,image.size.height)]; 
    CGRect rect = CGRectMake(point.x, point.y, image.size.width, image.size.height); 
    [[UIColor whiteColor] set]; 

    // add text onto the image 
    [textStyle drawInRect:CGRectIntegral(rect)]; 

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

    return newImage; 
} 
関連する問題