求一张文字图片

多图生成一张图片,给图片添加文字 - 简书
多图生成一张图片,给图片添加文字
#pragma mark--------------规律的图片数组生成一张图--------------------------
&#Description#&
@param imageArr 图片数组
@param imageV
imageView的尺寸
@return 处理过后的image
- (UIImage *)addImage:(NSArray *)imageArr toImageV:(UIImageView *)imageV {
UIGraphicsBeginImageContext(imageV.frame.size);
for (int a=0; a&imageArr. a++) {
// Draw image1
[imageArr[a] drawInRect:CGRectMake(0, a * 300, imageV.frame.size.width, 300)];
UIImage *resultingImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return [self watermarkImage:resultingImage withText:@"这就是水印"];
#pragma mark--------------不规律的图片数组生成一张图--------------------------
&#Description#&
@param image1 图片1
@param image2 图片2
@return 将图片2放在图片1上返回
- (UIImage *)addImage:(UIImage *)image1 toImage:(UIImage *)image2 {
UIGraphicsBeginImageContext(image1.size);
// Draw image1
[image1 drawInRect:CGRectMake(0, 0, image1.size.width, image1.size.height)];
// Draw image2
[image2 drawInRect:CGRectMake(0, 0, image2.size.width, image2.size.height)];
UIImage *resultingImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return resultingI
#pragma mark--------------给图片绘制文字--------------------------
&#Description#&
@param img
需要处理的图片
@param text 添加的文字
@return 处理过后的图片
- (UIImage *)watermarkImage:(UIImage *)img withText:(NSString *)text{
//1.获取上下文
UIGraphicsBeginImageContext(img.size);
//2.绘制图片
[img drawInRect:CGRectMake(0, 0, img.size.width, img.size.height)];
//3.绘制水印文字
CGRect rect = CGRectMake(0,20, img.size.width, 20);
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle defaultParagraphStyle] mutableCopy];
style.alignment = NSTextAlignmentC
//文字的属性
NSDictionary *dic = @{
NSFontAttributeName:[UIFont systemFontOfSize:18],
NSParagraphStyleAttributeName:style,
NSForegroundColorAttributeName:[UIColor whiteColor]
//将文字绘制上去
[text drawInRect:rect withAttributes:dic];
//4.获取绘制到得图片
UIImage *watermarkImage = UIGraphicsGetImageFromCurrentImageContext();
//5.结束图片的绘制
UIGraphicsEndImageContext();
return watermarkI
#pragma mark--------------将文字准换成图片--------------------------
#define CONTENT_MAX_WIDTH
-(UIImage *)imageFromText:(NSArray*) arrContent withFont: (CGFloat)fontSize
// set the font type and size
UIFont *font = [UIFont systemFontOfSize:fontSize];
NSMutableArray *arrHeight = [[NSMutableArray alloc] initWithCapacity:arrContent.count];
CGFloat fHeight = 0.0f;
for (NSString *sContent in arrContent) {
CGSize stringSize = [sContent sizeWithFont:font constrainedToSize:CGSizeMake(CONTENT_MAX_WIDTH, 10000) lineBreakMode:UILineBreakModeWordWrap];
[arrHeight addObject:[NSNumber numberWithFloat:stringSize.height]];
fHeight += stringSize.
CGSize newSize = CGSizeMake(CONTENT_MAX_WIDTH+20, fHeight+50);
UIGraphicsBeginImageContextWithOptions(newSize,NO,0.0);
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextSetCharacterSpacing(ctx, 10);
CGContextSetTextDrawingMode (ctx, kCGTextFillStroke);
CGContextSetRGBFillColor (ctx, 0.1, 0.2, 0.3, 1); // 6
CGContextSetRGBStrokeColor (ctx, 0, 0, 0, 1);
int nIndex = 0;
CGFloat fPosY = 20.0f;
for (NSString *sContent in arrContent) {
NSNumber *numHeight = [arrHeight objectAtIndex:nIndex];
CGRect rect = CGRectMake(10, fPosY, CONTENT_MAX_WIDTH , [numHeight floatValue]);
[sContent drawInRect:rect withFont:font lineBreakMode:UILineBreakModeWordWrap alignment:UITextAlignmentLeft];
fPosY += [numHeight floatValue];
// transfer image
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
注:转载请注明出处,写的不好的地方请大家多多包含。
iOS小屌丝- - !
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金 相信有很多...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金相信有很多朋友...
Java 基础思维导图,让 Java 不再难懂 - 工具资源 - 掘金思维导图的好处 最近看了一些文章的思维导图,发现思维导图真是个强大的工具。了解了思维导图的作用之后,觉得把它运用到java上应该是个不错的想法,这样回顾知识点的时候一目了然,快速知道自己的短板。 思维导图...
超凡的一生 他生命的核心是个奥秘—— 野猪从他的视线中消失了,这时比尔起身翻过山脊,顺着猎物的踪迹到了大峡谷的谷底。他边跑边在想,如何用最佳的办法将这些像猪一样的动物赶到上面的平地去,让他的几个朋友能看准了打中它们。 突然,巨大的爆炸震动了大地。拖把桶大小的石头从峡谷山坡滚...
亚马逊已经建立了自己“能寻找一切”的声誉。但是,当涉及到高度受政府管制的酒类销售领域时,所有的事情都可能被证明有点过于热心了,这家庞大的在线零售商在今年年底将关闭有5年的亚马逊葡萄酒市场。 根据TechCrunch的报道,官方昨天向卖家发送了邮件,通知他们即将关闭的消息。据...
想要高效的进行界面刷新,OpenGL/硬件加速是必须的。最近我在研究OpenGL的过程中,被OpenGL的API、Shader、GSLS等烧脑得不要不要的。也不怪它,OpenGL本来就是为3D动画设计的,一上来肯定高大上。网络上有不少OpenGL ES 2.0视频rende...
今天在分答听了成甲老师关于如何掌握高效阅读方法的直播,由浅入深且方法实用,所以整理上来和大家分享。
开篇成甲老师指出我们在读书过程中往往存在两个误区:1.读书就是要从头到尾读完。2.读书要一页页的读。我估计陷在这种误区中的同学不在少数吧,至少我以前就是这么读书...
今天项目使用iphone5 真机测试时发现KVC赋值发生崩溃,以为是和iphone5是32位 以上是64的有关,,但是我32 64位是配过的,一时间不知道怎么回事,后来在stackOverflow上找到了答案,是因为在model数据定义的属性的时候,有一个BOOL 类型的,...网站配置未生效 | www.17qq.com | 百度云加速
请打开cookies.
你访问的网站(www.17qq.com) 使用了
网络。 百度云加速目前无法解析此域名 (www.17qq.com).
主要因为: 网站主刚刚在百度云加速添加了这个域名,百度云加速需要几十秒的时间同步到全球网络中。稍等片刻刷新页面即可解决。
也有可能: 网站配置出错.已解决问题
求一个图片上面是一个小女孩拉这小男孩的衣服有几个字是宝贝别走。是卡通图片@_@10
提问时间: 16:16:17
浏览次数:2577
不知道你要找的是不是这个?
答案创立者
以企业身份回答&
快速解决你的电商难题
店铺优化排查提升2倍流量
擅长&nbsp 店铺优化
您可能有同感的问题(路德维希)
(精戏活儿)
(美丽教主洋洋)
第三方登录:

我要回帖

 

随机推荐