iOS中制作一张水印图片


如果这篇文章帮助到了您,希望您能点击一下喜欢或者评论,你们的支持是我前进的强大动力.谢谢!

我们在很多APP中都会看到水印图片,例如下面微博中的一张图片


下面就来分享一下怎么制作一张水印图片吧


首先生成水印图片它最终是生成了一个新的图片,生成图片要用到了位图上下文,但是位图上下文需要我们手动创建。

实现水印效果的思路:

1.开启一个和原始图片一样的位图上下文.

2.把原始图片先绘制到位图上下文.

3.再把要添加的水印(文字,logo)等绘制到位图上下文.

4.最后从上下文中取出一张图片.

5.关闭位图上下文.

加载要添加水印的图片

UIImage *image = [UIImage  imageNamed:@"图片"];

创建一个位图上下文.

参数size:要开启一个多大的图片上下文.

参数opaque:不透明度,当为YES为不透明,为NO的时候透明,

参数scale:是否需要缩放,0代表不缩放

UIGraphicsBeginImageContextWithOptions(image.size, YES, 0);

把要添加水印的图片绘制到上下文当中.

[image drawAtPoint:CGPointZero];

绘制水印(logo)

NSString *str = @"李小南";

[str drawAtPoint:CGPointMake(50, 100) withAttributes:@{NSFontAttributeName : [UIFont systemFontOfSize:20], NSForegroundColorAttributeName : [UIColor orangeColor]}];

从上下文当中生成一张新图片.

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

关闭上下文.

UIGraphicsEndImageContext();

这样,新的带有水印的图片就做好了,我可以将它写到桌面

NSData *data = UIImagePNGRepresentation(image);

[data writeToFile:@"/Users/lixiaonan/Desktop/李小南.png"  atomically:YES];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值