2012-10-01 53 views
4

創建UIImage我得到了一個大UIImage。在這UIImage我還有一個,女巫實際上是一個面具。還有一個 - 我在這個面具上得到了UILabel!女巫是圖片的文字。從2 UIImages和標籤

我想將所有這些零件合併到一個UIImage中以將其保存到相機膠捲!

我應該怎麼做?

UPD。我應該如何添加UITextView

我發現:

[[myTextView layer] renderInContext:UIGraphicsGetCurrentContext()]; 

但這種方法並沒有把myTextView在正確的地方。

回答

10

創建兩個UIImage對象,一個UILabel對象,然後使用drawInRect:方法

//create image 1 

UIImage *img1 = [UIImage imageNamed:@"image1.png"]; 

//create image 2  

UIImage *img2 = [UIImage imageNamed:@"image2.png"]; 

// create label 

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50,50)]; 

//set you label text 

[label setText:@"Hello"]; 

// use UIGraphicsBeginImageContext() to draw them on top of each other 

//start drawing 
UIGraphicsBeginImageContext(img1.size); 

//draw image1 

[img1 drawInRect:CGRectMake(0, 0, img1.size.width, img1.size.height)]; 

//draw image2 

[img2 drawInRect:CGRectMake((img1.size.width - img2.size.width) /2, (img1.size.height- img2.size.height)/2, img2.size.width, img2.size.height)]; 

//draw label 

[label drawTextInRect:CGRectMake((img1.size.width - label.frame.size.width)/2, (img1.size.height - label.frame.size.height)/2, label.frame.size.width, label.frame.size.height)]; 

//get the final image 

UIImage *resultImage = UIGraphicsGetImageFromCurrentImageContext(); 

UIGraphicsEndImageContext(); 

resultImage這是UIImage包含所有圖像和標籤作爲一個圖像。之後,你可以將它保存在你想要的地方。

希望有幫助...

+0

我應該如何繪製UITextView?沒有「drawInRect」這樣的函數( –