0 CGContextRef context = UIGraphicsGetCurrentContext(); 設(shè)置上下文
1 CGContextMoveToPoint 開(kāi)始畫線
2 CGContextAddLineToPoint 畫直線
4 CGContextAddEllipseInRect 畫一橢圓
4 CGContextSetLineCap 設(shè)置線條終點(diǎn)形狀
4 CGContextSetLineDash 畫虛線
4 CGContextAddRect 畫一方框
4 CGContextStrokeRect 指定矩形
4 CGContextStrokeRectWithWidth 指定矩形線寬度
4 CGContextStrokeLineSegments 一些直線
5 CGContextAddArc 畫已曲線 前倆店為中心 中間倆店為起始弧度 最后一數(shù)據(jù)為0則順時(shí)針畫 1則逆時(shí)針
5 CGContextAddArcToPoint(context,0,0, 2, 9, 40);//先畫倆條線從point 到 弟1點(diǎn) 疼邀, 從弟1點(diǎn)到弟2點(diǎn)的線 切割里面的圓
6 CGContextSetShadowWithColor 設(shè)置陰影
7 CGContextSetRGBFillColor 這只填充顏色
7 CGContextSetRGBStrokeColor 畫筆顏色設(shè)置
7 CGContextSetFillColorSpace 顏色空間填充
7 CGConextSetStrokeColorSpace 顏色空間畫筆設(shè)置
8 CGContextFillRect 補(bǔ)充當(dāng)前填充顏色的rect
8 CGContextSetAlaha 透明度
9 CGContextTranslateCTM 改變畫布位置
10 CGContextSetLineWidth 設(shè)置線的寬度
11 CGContextAddRects 畫多個(gè)線
12 CGContextAddQuadCurveToPoint 畫曲線
13 CGContextStrokePath 開(kāi)始繪制圖片
13 CGContextDrawPath 設(shè)置繪制模式
14 CGContextClosePath 封閉當(dāng)前線路
15 CGContextTranslateCTM(context, 0, rect.size.height); CGContextScaleCTM(context, 1.0, -1.0);反轉(zhuǎn)畫布
16 CGContextSetInterpolationQuality 背景內(nèi)置顏色質(zhì)量等級(jí)
16 CGImageCreateWithImageInRect 從原圖片中取小圖
17 字符串的 寫入可用 nsstring本身的畫圖方法 - (CGSize)drawInRect:(CGRect)rect withFont:(UIFont *)font lineBreakMode:(UILineBreakMode)lineBreakMode alignment:(UITextAlignment)alignment;來(lái)寫進(jìn)去即可
18對(duì)圖片放大縮小的功能就是慢了點(diǎn)
UIGraphicsBeginImageContext(newSize);
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
19 CGColorGetComponents() 返回顏色的各個(gè)直 以及透明度 可用只讀const float 來(lái)接收 是個(gè)數(shù)組
20 畫圖片 CGImageRef image=CGImageRetain(img.CGImage);
CGContextDrawImage(context, CGRectMake(10.0, height -
100.0, 90.0, 90.0), image);
21 實(shí)現(xiàn)逐變顏色填充方法 CGContextClip(context);
CGColorSpaceRef rgb = CGColorSpaceCreateDeviceRGB();
CGFloat colors[] =
{
204.0 / 255.0, 224.0 / 255.0, 244.0 / 255.0, 1.00,
29.0 / 255.0, 156.0 / 255.0, 215.0 / 255.0, 1.00,
0.0 / 255.0, 50.0 / 255.0, 126.0 / 255.0, 1.00,
};
CGGradientRef gradient = CGGradientCreateWithColorComponents
(rgb, colors, NULL, sizeof(colors)/(sizeof(colors[0])*4));
CGColorSpaceRelease(rgb);
CGContextDrawLinearGradient(context, gradient,CGPointMake
(0.0,0.0) ,CGPointMake(0.0,self.frame.size.height),
kCGGradientDrawsBeforeStartLocation);
22 注: 畫完圖后,必須
先用CGContextStrokePath來(lái)描線,即形狀
后用CGContextFillPath來(lái)填充形狀內(nèi)的顏色.
填充一個(gè)路徑的時(shí)候斧吐,路徑里面的子路徑都是獨(dú)立填充的。
假如是重疊的路徑蛇券,決定一個(gè)點(diǎn)是否被填充囱淋,有兩種規(guī)則
1,nonzero winding number rule:非零繞數(shù)規(guī)則猪杭,假如一個(gè)點(diǎn)被從左到右跨過(guò),計(jì)數(shù)器+1妥衣,從右到左跨過(guò)皂吮,計(jì)數(shù)器-1戒傻,最后,如果結(jié)果是0蜂筹,那么不填充需纳,如果是非零,那么填充艺挪。
2,even-odd rule: 奇偶規(guī)則不翩,假如一個(gè)點(diǎn)被跨過(guò),那么+1麻裳,最后是奇數(shù)口蝠,那么要被填充,偶數(shù)則不填充津坑,和方向沒(méi)有關(guān)系妙蔗。
Function
Description
CGContextEOFillPath
使用奇偶規(guī)則填充當(dāng)前路徑
CGContextFillPath
使用非零繞數(shù)規(guī)則填充當(dāng)前路徑
CGContextFillRect
填充指定的矩形
CGContextFillRects
填充指定的一些矩形
CGContextFillEllipseInRect
填充指定矩形中的橢圓
CGContextDrawPath
兩個(gè)參數(shù)決定填充規(guī)則,kCGPathFill表示用非零繞數(shù)規(guī)則国瓮,kCGPathEOFill表示用奇偶規(guī)則灭必,kCGPathFillStroke表示填充,kCGPathEOFillStroke表示描線乃摹,不是填充
設(shè)置當(dāng)一個(gè)顏色覆蓋上另外一個(gè)顏色禁漓,兩個(gè)顏色怎么混合
默認(rèn)方式是
result = (alpha * foreground) + (1 - alpha) * background
CGContextSetBlendMode :設(shè)置blend mode.
CGContextSaveGState :保存blend mode.
CGContextRestoreGState:在沒(méi)有保存之前,用這個(gè)函數(shù)還原blend mode.
CGContextSetBlendMode 混合倆種顏色
iOS的繪圖API
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門拢肆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)减响,“玉大人,你說(shuō)我怎么就攤上這事郭怪≈荆” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵鄙才,是天一觀的道長(zhǎng)颂鸿。 經(jīng)常有香客問(wèn)我,道長(zhǎng)攒庵,這世上最難降的妖魔是什么嘴纺? 我笑而不...
- 正文 為了忘掉前任败晴,我火速辦了婚禮,結(jié)果婚禮上颖医,老公的妹妹穿的比我還像新娘位衩。我一直安慰自己,他們只是感情好熔萧,可當(dāng)我...
- 文/花漫 我一把揭開(kāi)白布糖驴。 她就那樣靜靜地躺著,像睡著了一般佛致。 火紅的嫁衣襯著肌膚如雪贮缕。 梳的紋絲不亂的頭發(fā)上,一...
- 那天俺榆,我揣著相機(jī)與錄音感昼,去河邊找鬼。 笑死罐脊,一個(gè)胖子當(dāng)著我的面吹牛定嗓,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播萍桌,決...
- 文/蒼蘭香墨 我猛地睜開(kāi)眼宵溅,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了上炎?” 一聲冷哼從身側(cè)響起恃逻,我...
- 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎藕施,沒(méi)想到半個(gè)月后寇损,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡裳食,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年矛市,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片诲祸。...
- 正文 年R本政府宣布径密,位于F島的核電站,受9級(jí)特大地震影響躺孝,放射性物質(zhì)發(fā)生泄漏享扔。R本人自食惡果不足惜底桂,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望惧眠。 院中可真熱鬧籽懦,春花似錦、人聲如沸氛魁。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)秀存。三九已至捶码,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間或链,已是汗流浹背惫恼。 一陣腳步聲響...
- 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像叼耙,于是被迫代替她去往敵國(guó)和親腕窥。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- iOS中能夠用來(lái)繪圖的框架一般是 UIKit , Quartz 2D(CoreGraphic), OpenGL, ...
- 圖形上下文的由來(lái). 之所以叫頓悟,也算不上什么有很高深的理解,相對(duì)之前對(duì)繪圖在api層面上,復(fù)制過(guò)來(lái)的代碼是有了一...
- 一冕碟、效果: 二、功能描述: 使用“雙指”可對(duì)圖片進(jìn)行滑動(dòng)匆浙、放大縮小操作安寺, 使用“單指”可對(duì)圖片進(jìn)行繪制 繪筆的粗細(xì)...
- 兩天前软能,去了農(nóng)學(xué)院看學(xué)長(zhǎng)迎捺,學(xué)長(zhǎng)告訴我匆匆那年有一部分是在這里取的景,所以就激發(fā)了我對(duì)這部電影的興趣查排。 說(shuō)實(shí)話凳枝,很少...