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];