iPhone开发之在图片上显示文字(Add text to UIImage)

前些时候在iPhone上做分页需要用到的,分页链接是一张图片,需要在图片上显示页码。在网上找到的一段代码,将文字写到图片上面,还不错,核心代码如下:

-(UIImage *)addText:(UIImage *)img text:(NSString *)someText{
	int w = img.size.width;
	int h = img.size.height;
	CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
	CGContextRef context = CGBitmapContextCreate(NULL, w, h, 8, 4 * w, colorSpace, kCGImageAlphaPremultipliedFirst);
	CGContextDrawImage(context, CGRectMake(0, 0, w, h), img.CGImage);
	
	char* text= (char *)[someText cStringUsingEncoding:NSASCIIStringEncoding];
	CGContextSelectFont(context, "Arial",20, kCGEncodingMacRoman);
	CGContextSetTextDrawingMode(context, kCGTextFill);
	CGContextSetRGBFillColor(context, 0, 0, 0, 1);
	CGContextShowTextAtPoint(context,10,10,text, strlen(text));
	CGImageRef imgCombined = CGBitmapContextCreateImage(context);
	
	CGContextRelease(context);
	CGColorSpaceRelease(colorSpace);
	
	UIImage *retImage = [UIImage imageWithCGImage:imgCombined];
	CGImageRelease(imgCombined);
	
	return retImage;
}

- (void)viewDidLoad {
    UIImage *img = [UIImage imageNamed:@"logo.png"];
    UIImage *image = [self addText:img text:@"Hello World!"];
    [self.imgView setImage:image];
    [super viewDidLoad];
}

效果:

阅读更多
文章标签: iphone image null
个人分类: iphone
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭