多個UIImage合並成一個UIImage


寫了兩篇關於照片保存的文章:

  1. iOS開發之保存照片到系統相冊(Photo Album)
  2. iOS開發之保存照片到自己創建的相簿

介紹了如何將圖片保存到系統相冊,也可以將照片保存到自己的相簿。里面還介紹了一個第三方ALAssetsLibrary+CustomPhotoAlbum保存照片的方法。

本篇文章將會介紹如何將多個UIImage合並成一個UIImage。聽起來似乎有點暈暈乎乎的,這個可以合並嗎?答案是肯定的。我們拿兩個UIImage來舉例。

創建兩個UIImage

UIImage *image1 = [UIImage imageNamed:@"iOSDevTip"];
UIImage *image2 = [UIImage imageNamed:@"CodePush"];

創建UIImage的方法有很多種,我們就簡單的通過imageNamed:方法來創建。

合並之后的size

CGSize size = CGSizeMake(image1.size.width + image2.size.width, image1.size.height);

合並兩個UIImage,需要計算合並之后的size。假設這兩個UIImage的高度是是相同的,把他們的寬度相加,得到合並之后的UIImagesize

合並方法

有了UIImagesize接下來就是把兩個UIImage合並,方法如下:

 UIGraphicsBeginImageContext(size);
[image1 drawInRect:CGRectMake(0, 0, image1.size.width, size.height)];
[image2 drawInRect:CGRectMake(image1.size.width, 0, image2.size.width, size.height)];
UIImage *togetherImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

通過上述的代碼,就可以實現兩個UIImage的合並。Demo地址:iOSStrongDemo 這個小功能還挺有用的。

作者李剛是剛剛在線(www.superqq.com)站長,百度百家專欄作者
iOS工程師非著名自媒體,微信公眾號iOS開發:iOSDevTip運營者



注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: