裁剪图片、添加水印
2019獨角獸企業重金招聘Python工程師標準>>>
主要知識點:扇形、曲線、裁剪圖片、添加水印
1、扇形:基本寫法與畫圓相似,首先需要添加一個起點位置, 再就是根據圓設置開始與結束的角度,圓是0到2π,扇形取其一部分就好,最后將其關閉,就是一個扇形。
2、曲線:與前面一致,先獲取上下文,再確定一個起點位置,即設置起點坐標,添加曲線CGContextAddCurveToPoint(context, self.frame.size.width/3-50+200, self.frame.size.height/3-100 ,self.frame.size.width/3-50+100+50, self.frame.size.height/3-100+300, 600, 100);其后方法與昨天一樣,設置線寬,加顏色,渲染。(第一個參數曲線的波峰x,第二個參數曲線的波峰y,第三個參數曲線的波谷x,第四個參數曲線的波谷y,第五第六分別是曲線的寬與高)。
3、裁剪圖片:1)獲取要裁剪的圖片? ??UIImage *image=[ UIImage imageNamed:@"1.png"];
? ? ? ? ? ? ? ? ? ? ? ?2)開始裁剪 ? ?UIGraphicsBeginImageContext(image.size);
? ? ? ? ? ? ? ? ? ? ? ?3)獲取上下文 ???CGContextRef context=UIGraphicsGetCurrentContext();
? ? ? ? ? ? ? ? ? ? ? ?4)添加要裁剪的圖形樣式,如圓:CGContextAddEllipseInRect(context, ? ? ? ? ? ?CGRectMake(self.frame.size.width/2-80, self.frame.size.height/2+20,self.frame.size.width/2+70,self.frame.size.width/2+90 ));
? ? ? ? ? ? ? ? ? ? ? ?5)裁剪 ? ??CGContextClip(context)
? ? ? ? ? ? ? ? ? ? ? ?6)獲取原圖片的原點 ? ?[image drawAtPoint:CGPointZero];
? ? ? ? ? ? ? ? ? ? ? ?7)獲取新image ? ? ?
?UIImage *imageI=UIGraphicsGetImageFromCurrentImageContext();
? ? ? ? ? ? ? ? ? ? ? 8)添加ImageView控件 ? ? ? 顯示裁剪完的新圖片 ? ?
? ? ? ? ? ? ? ? ? ? ? 9)關閉裁剪 ? ??UIGraphicsEndImageContext();
3、添加水印
? ? 1)、獲取要添加水印的圖片
UIImage *beginImage=[UIImage imageNamed:@"1.png"];
? ?2)、開啟圖片上下文
? ? UIGraphicsBeginImageContextWithOptions(beginImage.size, NO, 0);(參數:原圖尺寸、透明開關,縮放因子)
? ?3)、繪制圖片,設置背景圖片的大小
? ? [beginImage drawInRect:CGRectMake(0, 0, beginImage.size.width, beginImage.size.height)];
? ? 4)、添加水印圖片
? ? UIImage *waterImage=[UIImage imageNamed:@"21.jpg"];
? ? 5)、繪制水印圖片
? ? [waterImage drawInRect:CGRectMake(beginImage.size.width-waterImage.size.width*0.1-100, beginImage.size.height-waterImage.size.height*0.1-100, 50, 50) blendMode:kCGBlendModeNormal alpha:0.5];
? ?6)、添加imageView控件顯示圖片及水印
? ? UIImageView *imageView=[[UIImageView alloc]initWithFrame:CGRectMake(self.frame.size.width-300,self.frame.size.height-600, self.frame.size.width*0.1, self.frame.size.height*0.1)];
? ? imageView.image=waterImage;
? ? [self addSubview:imageView];
? 7)、關閉圖片
? ? ? UIGraphicsEndImageContext();
?
?
?
?
?
轉載于:https://my.oschina.net/whzhen1452/blog/737991
總結
- 上一篇: PHP 分页类 高洛峰 细说PHP
- 下一篇: STL中的查找算法