类似微信群组封面拼接, 适用于聊天项目中, 之前翻遍了整个 Github 没找着, 就自己整了一个, 顺便开源.
Made with ❤️ by The EST Group - We design and build: the Future!
- iOS7+ project
- ARC project
将下面代码复制进你的 Podfile
文件中
pod 'StitchingImage', :git => 'https://github.com/zhengjinghua/StitchingImage.git'
下载 此项目, 并将该项目里的 Classes
文件夹里的所有文件复制进你的项目中, 然后在需要调用此项目的地方引入 #import "StitchingImage.h"
.
// 将你要拼接的头像文件放入到一个 NSMutableArray 中
NSMutableArray *imageViews = [[NSMutableArray alloc] init];
UIImageView *imageView_1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];
imageView_1.image = [UIImage imageNamed:@"1.jpg"];
[imageViews addObject:imageView_1];
UIImageView *imageView_2 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];
imageView_2.image = [UIImage imageNamed:@"2.jpg"];
[imageViews addObject:imageView_2];
// 生成一个背景 canvasView, 用于存放拼接好的群组封面, 相当于背景.
UIImageView *canvasView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
canvasView.layer.cornerRadius = 10;
canvasView.layer.masksToBounds = YES;
canvasView.backgroundColor = [UIColor colorWithWhite:0.839 alpha:1.000];
// 现在你可以调用以下方法, 将用户的头像画到指定的 canvasView 上
UIImageView *coverImage = [[StitchingImage alloc] stitchingOnImageView:canvasView withImageViews:imageViews];
[self.view addSubview:coverImage];
// 如果你想自定义生成的群组封面里的 margin 值, 你可以调用以下方法
UIImageView *coverImage = [[StitchingImage alloc] stitchingOnImageView:canvasView withImageViews:imageViews marginValue:15.0f];
[self.view addSubview:coverImage];
StitchingImage 被许可在 MIT 协议下使用. 查阅 LICENSE 文件来获得更多信息.
Stitching image just like WeChat group chat's cover
Made with ❤️ by The EST Group - We design and build: the Future!
- iOS7+ project
- ARC project
If you're using CocoaPods (You are not?! You should!!) just add
pod 'StitchingImage', :git => 'https://github.com/zhengjinghua/StitchingImage.git'
into your Podfile file.
Download the project and copy the Classes
folder into your project and then simply #import "StitchingImage.h"
in the file(s) you would like to use it in.
NSMutableArray *imageViews = [[NSMutableArray alloc] init];
UIImageView *imageView_1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];
imageView_1.image = [UIImage imageNamed:@"1.jpg"];
[imageViews addObject:imageView_1];
UIImageView *imageView_2 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];
imageView_2.image = [UIImage imageNamed:@"2.jpg"];
[imageViews addObject:imageView_2];
UIImageView *canvasView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
canvasView.layer.cornerRadius = 10;
canvasView.layer.masksToBounds = YES;
canvasView.backgroundColor = [UIColor colorWithWhite:0.839 alpha:1.000];
UIImageView *coverImage = [[StitchingImage alloc] stitchingOnImageView:canvasView withImageViews:imageViews];
[self.view addSubview:coverImage];
UIImageView *coverImage = [[StitchingImage alloc] stitchingOnImageView:canvasView withImageViews:imageViews marginValue:15.0f];
[self.view addSubview:coverImage];
StitchingImage is available under the MIT license. See the LICENSE file for more info.