亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍

html5 Canvas畫圖教程(4)—未閉合的路徑及漸變色的填充方法
來源:易賢網(wǎng) 閱讀:2373 次 日期:2016-07-23 13:48:05
溫馨提示:易賢網(wǎng)小編為您整理了“html5 Canvas畫圖教程(4)—未閉合的路徑及漸變色的填充方法”,方便廣大網(wǎng)友查閱!

一般繪圖的方式有兩種,即填充和描邊,前面的文章已經(jīng)講了描邊的方法stroke,本文就講一下Canvas中填充圖形的方法。

填充即fill(),很直白吧?而且和strokeStyle表示描邊樣式一樣,fillStyle即表示填充樣式。

ctx.fillStyle = '顏色';默認的填充樣式是不透明的黑色

提問:未閉合的路徑可以填充嗎?

可以。Canvas會從你當前路徑的終點直接連接到起點,然后填充。如圖:

名單

但你可以發(fā)現(xiàn),最后一段沒有描邊。

記得我們前一篇文章用4條線畫了一個正方形,但canvas不會這么差勁,連直接繪制矩形的函數(shù)都沒有。你可以使用fillRect()直接填充一個矩形:

代碼如下:

ctx.fillRect(x,y,width,height);

這里的x,y是指矩形的左上角起點的坐標,記住。

說到fillRect,就不得不提strokeRect,你猜對了,他的意思就是直接描邊出一個矩形。

還有fillText與strokeText,至于作用嘛,你可能都猜到了,我這里先不講,大家先預習吧。

Canvas填充漸變色

在Canvas中,漸變色同樣分為兩種,即線性漸變和徑向漸變,而且創(chuàng)建他們的方法也是獨立的。我們先看如何創(chuàng)建線性漸變。

創(chuàng)建線性漸變=createLinearGradient——看,依然很直接的單詞。他的語法如下:

createLinearGradient(x1,y1,x2,y2)有4個參數(shù)呢!看起來好復雜,其實這個挺簡單的,因為我們前面已經(jīng)說了,平面世界里的一個點是由x坐標和y坐標確定的。所以,x1,y1就是表示線性漸變的起點坐標,x2,y2就表示終點坐標。

這樣做的好處很明顯,如果我們想創(chuàng)建一個斜著的線性漸變,很方便。但我們先創(chuàng)建一個水平的線性漸變試試吧。

var linear = ctx.createLinearGradient(100,100,200,100);漸變好像創(chuàng)建了,那么我們可以填充了嗎?————這個漸變是空的,沒有顏色。

往漸變條里加顏色的方法是addColorStop(位置,顏色).但要注意了,這個addColorStop不是加在畫筆上,而是加在前面的那個保存漸變的變量上,我這里是linear.

代碼如下:

var linear = ctx.createLinearGradient(100,100,200,100);

linear.addColorStop(0,'#fff');

linear.addColorStop(0.5,'#f0f');

linear.addColorStop(1,'#333');

我這里用了3個addColorStop,即為漸變條加上了3個顏色。

注意:addColorStop的位置參數(shù),永遠是介于0-1之間的數(shù)字,可以是兩位小數(shù),表示百分比。他沒法接收’3px’這樣的參數(shù)。

這時候,我們就可以填充漸變色了,但我們必須先把定義好的漸變賦給fillStyle.

代碼如下:

var linear = ctx.createLinearGradient(100,100,200,100);

linear.addColorStop(0,'#fff');

linear.addColorStop(0.5,'#f0f');

linear.addColorStop(1,'#333');

ctx.fillStyle = linear; //把漸變賦給填充樣式

ctx.fillRect(100,100,100,100);

ctx.stroke();

名單

注意,fillRect與strokeRect畫出的都是獨立的路徑,如上面的代碼,在fillRect后調(diào)用描邊,并不會把剛剛畫出的矩形描邊,strokeRect同理。

經(jīng)過測試后,發(fā)現(xiàn)了一個很蛋疼的問題,就是線性漸變的坐標是相對于整個Canvas范圍而言的。比如我這里,我的線性漸變起點就是100,100,如果我畫了一個矩形在0,0的位置,用這個漸變來填充,就會發(fā)現(xiàn)沒有填充——因為我的漸變的范圍根本就超過了矩形的范圍。

這真是一個坑爹的設定。

提問:漸變起點之前與漸變終點之后還會填充顏色嗎?

會。起點之前的顏色就是起點色,終點之后的顏色一直是終點色。

如何終止終點色,你可以在結束色之后再填一個透明的結束色。如:

代碼如下:

linear.addColorStop(0.99,'#333');

linear.addColorStop(1,'rgba(51,51,51,0)');

依照前面的計劃,我再建一個傾斜的線性漸變試試。只需要改createLinearGradient的參數(shù)即可.

代碼如下:

var linear = ctx.createLinearGradient(100,100,200,200);

效果如圖:

名單

然后,讓我們來試試徑向漸變(圓形漸變)。與createLinearGradient類似,創(chuàng)建徑向漸變的方法是:createRadialGradient,但他們的參數(shù)可大不相同:

createRadialGradient(x1,y1,r1,x2,y2,r2)其中的x1,y1,x2,y2依舊表示起點和終點,不過這里的起點和終點都是一個圓,而x,y則是圓心的坐標。所以,r1與r2分別是起點圓的半徑和終點圓的半徑。如圖:

名單

在我的印象中,貌似徑向漸變就是一個圓,圓心就是起點,圓的半徑就是終點。但canvas里面的徑向漸變竟然搞的不一樣了,起點一個圓,終點一個圓,和我的理解有差距。

我們從最簡單的做起。首先,做一個很正規(guī)的徑向漸變,即漸變圓形的圓心就是漸變的起點。由于正規(guī)的徑向漸變,中心即圓心,所以我們應該盡量避免發(fā)生偏斜。那么,我們把終點圓的圓心與起點圓的圓心重合吧?

代碼如下:

var radial = ctx.createRadialGradient(55,55,10,55,55,55); //重合的圓心坐標

radial.addColorStop(0,'#fff');

radial.addColorStop(0.5,'#ff0');

radial.addColorStop(0.9,'#555');

radial.addColorStop(1,'#f00');

名單

這里我設置的徑向漸變起點圓和終點圓的圓心坐標相同,而起點圓半徑為10,終點圓半徑為55.最后畫出的徑向漸變范圍是一個寬高110的圓形,說明漸變范圍以終點圓的范圍為準。

(可以看到終點圓范圍之外還是有顏色,這個顏色就是終點色,但是,如果你企圖使用radial.addColorStop(1.5,’#0f0′);這樣來定義漸變范圍之外的顏色,你還是會收到一個錯誤).

那么,起點圓的半徑有什么用呢?——本來正常的徑向漸變的中心(姑且稱之為“變心”…吧)只是一個點,不應該是一個圓的。其實我們沒錯,這個起點圓就相當于一個圓點而已,只是可能比較大。

讓我們把起點圓的半徑變得很大,接近于終點圓的半徑:

代碼如下:

var radial = ctx.createRadialGradient(55,55,50,55,55,55); //很接近

其他的colorStop都不變,然后圖形就變成了這個樣子。

名單

也就是說,canvas中徑向漸變的起點色,是從起點圓的范圍之外繪制的,而起點圓的整個顏色都是起點色。

我們把起點圓的半徑設為0,那徑向漸變的“變心”,就真的是一個點了。

大部分時候我們都不需要很正規(guī)的徑向漸變,反而希望他的變心是偏移的,類似下圖:

名單

這個時候,canvas徑向漸變兩個圓的優(yōu)勢就出來了,只要我們起點圓與終點圓的圓心不重合,那變心也就會偏移:

var radial = ctx.createRadialGradient(75,75,0,55,55,55);但此時的漸變范圍依然是終點圓的范圍哈。

很多人天生就有一種搞破壞的心理,比如這里,終點圓的半徑總比起點圓大,但如果把他們反過來會怎么樣呢?

代碼如下:

var radial = ctx.createRadialGradient(75,75,55,55,55,0);

經(jīng)測試,這樣不會報錯,只是原來的從內(nèi)到外的漸變反過來變成了從外到內(nèi)的漸變了。這是個好用法。

名單

還有個問題,如果我們把起點圓的圓心偏移了,并且起點圓的范圍超出了終點圓的范圍,

名單

這時會發(fā)生什么?

名單

這是什么情況?!

當起點圓和終點圓只有部分重疊的時候,就會出現(xiàn)這種情況。所以,如果你需要正常的徑向漸變,請保證其中一個圓完全包住了另一個圓。

另外,既然漸變可以賦給fillStyle,那么也可以賦給strokeStyle。效果你懂的。

更多信息請查看網(wǎng)頁制作
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢?yōu)闇剩?/div>
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網(wǎng)

亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍
国产农村妇女精品一区二区| 国产亚洲在线观看| 欧美在线91| 欧美日韩午夜| 一区二区三区四区五区在线| 99视频在线精品国自产拍免费观看| 99精品国产在热久久婷婷| 国产欧美日韩一区| 欧美激情国产日韩| 91久久综合| 久久狠狠婷婷| 亚洲国产一区二区在线| 免播放器亚洲| 国产精品国产三级国产专区53| 亚洲香蕉网站| 亚洲一区欧美二区| 国内成人在线| 激情欧美国产欧美| 乱人伦精品视频在线观看| 久久精品网址| 影音先锋久久久| 欧美福利专区| 久久狠狠久久综合桃花| 亚洲人体一区| 国产一区视频在线观看免费| 欧美一级一区| 亚洲一区二区成人| 在线综合亚洲| 亚洲日本无吗高清不卡| 国产综合自拍| 欧美成人中文| 久久综合久久综合这里只有精品| 一本色道88久久加勒比精品| 亚洲特级毛片| 狠久久av成人天堂| 国产一区自拍视频| 欧美韩日精品| 欧美在线二区| 欧美91福利在线观看| 国产九九精品| 国产一区二区三区奇米久涩| 日韩亚洲欧美精品| 夜夜嗨一区二区| 日韩视频一区二区三区在线播放免费观看| 国产一区欧美| 亚洲视频免费| 亚洲欧洲综合| 久久亚洲国产精品日日av夜夜| 午夜日韩av| 欧美亚洲专区| 今天的高清视频免费播放成人| 亚洲电影在线| 国产欧美在线| 久久亚洲影院| 男女精品视频| 午夜精品美女久久久久av福利| 在线不卡视频| 免费亚洲一区| 亚洲三级国产| 亚洲高清视频一区二区| 黄色日韩在线| 黑人一区二区三区四区五区| 在线精品一区| 亚洲一区二区四区| 久久久久久久欧美精品| 久久精品综合| 国产一区二区三区四区三区四| 黄色国产精品| 在线亚洲激情| 久久国产精品一区二区三区| 欧美日韩免费观看一区=区三区| 欧美三级网页| 国产精品毛片在线| 国产精品第十页| 免费视频一区| 狠狠久久婷婷| 在线亚洲成人| 老司机免费视频久久| 国内一区二区三区| 国产精品日韩欧美一区| 久色成人在线| 亚洲福利av| 久久久www| 韩日视频一区| 国产精品色网| 狠狠入ady亚洲精品经典电影| 99精品视频免费| 欧美精品七区| 国产农村妇女精品一区二区| 国产主播一区| 性欧美长视频| 99re国产精品| 亚洲国产精品久久久久久女王| 久久国产精品亚洲va麻豆| 欧美日韩精品一本二本三本| 中文欧美日韩| 欧美特黄视频| 麻豆精品网站| 一本色道精品久久一区二区三区 | 国产精品多人| 国产伦精品一区二区三区| 欧美三级网页| 久久经典综合| 久久xxxx精品视频| 国内在线观看一区二区三区| 久久国产精品久久w女人spa| 中文一区二区| 国产一区二区高清视频| 91久久精品一区二区别| 激情欧美日韩| 在线成人www免费观看视频| 欧美日韩国产成人精品| 久久九九电影| 午夜亚洲伦理| 久久av一区二区| 亚洲综合欧美日韩| 国产一区二区精品| 国产精品一级久久久| 亚洲伦伦在线| 一区二区三区欧美成人| 亚洲乱码视频| 国产婷婷精品| 久久国产精品高清| 毛片一区二区| 欧美日韩国产精品一卡| 欧美日韩午夜| 狠狠色综合网| 亚洲毛片av| 亚洲综合日韩| 欧美另类一区| 136国产福利精品导航网址| 一本色道久久综合亚洲精品高清 | 国内精品久久久久久久影视麻豆 | 欧美三级网页| 国产综合网站| 国产精品夜夜夜| 中文一区二区| 香蕉亚洲视频| 国产精品二区三区四区| 亚洲国产免费| 亚洲在线黄色| 午夜欧美理论片| 亚洲黄色天堂| 老司机一区二区三区| 久久在线精品| 亚洲九九精品| 欧美在线观看天堂一区二区三区| 国产一区二区在线观看免费播放| 亚洲国产精品一区| 性色一区二区三区| 国内综合精品午夜久久资源| 一区二区三区导航| 欧美日韩精品综合| 宅男噜噜噜66一区二区| 欧美成熟视频| 亚洲毛片av| 欧美在线资源| 一区二区三区精品视频在线观看| 噜噜爱69成人精品| 91久久夜色精品国产九色| 久久人人97超碰国产公开结果| 红桃视频国产精品| 麻豆久久婷婷| 国产一区91| 亚洲高清在线播放| 久久久综合网| 日韩一级欧洲| 国产一区二区中文| 久久狠狠久久综合桃花| 亚洲精品1234| 国产一区二区三区四区三区四| 国产乱人伦精品一区二区 | 亚洲乱码久久| 欧美精品一区二区三区久久久竹菊| 亚洲高清成人| 欧美午夜视频| 欧美一区免费| 午夜在线一区| 亚洲视频大全| 99在线精品视频在线观看| 伊人久久亚洲美女图片| 欧美日本一区| 午夜精品剧场| 欧美一区激情视频在线观看| 噜噜噜91成人网| 亚洲一区激情| 亚洲一区二区三区免费观看| 一区二区精品| 一本色道婷婷久久欧美| 亚洲欧洲精品一区二区三区波多野1战4 | 欧美日韩综合久久| 欧美专区18| 国产精品裸体一区二区三区| aⅴ色国产欧美| 一本久道久久久| 一区二区三区国产在线| 亚洲精品婷婷| 国产欧美另类| 男人的天堂成人在线| 久久久久久久高潮| 久久综合九色综合欧美狠狠| 久久综合九色综合久99| 久久一区二区三区av| 老司机午夜免费精品视频| 欧美在线日韩| 精品成人一区| 国产欧美在线| 校园激情久久| 欧美久久成人| 亚洲精品123区| 国产私拍一区| 欧美淫片网站| 亚洲精品偷拍| 久久久蜜桃一区二区人| 亚洲天堂久久| 国产一区二区精品| 欧美国产免费| 亚洲一区二区三区四区五区午夜| 好吊一区二区三区| 亚洲国产一区二区三区a毛片| 9色精品在线| 久久av一区二区三区| 欧美日韩国产高清视频| 一本色道久久综合亚洲精品高清 | 免费看黄裸体一级大秀欧美| 久久只有精品| 亚洲国产一区二区三区a毛片| 一本色道久久| 久久一区二区精品| 亚洲东热激情| 久久久www免费人成黑人精品| 欧美视频亚洲视频| 国产精品五区| 国精品一区二区| 亚洲尤物影院| 亚洲国产免费看| 欧美一区免费视频| 国产一区二区三区奇米久涩 | 99精品欧美| 国模精品一区二区三区| 久久福利精品| 亚洲美女一区| 欧美日韩一区二区三区四区在线观看| 国产日韩欧美一区在线| 国模吧视频一区| 美女精品一区| 一区二区三区免费看| 黑丝一区二区三区| 久久综合狠狠| 午夜亚洲影视| 国产偷国产偷亚洲高清97cao| 国内精品福利| 欧美一区免费| 久久人人超碰| 久久在线91| 久久久久中文| 欧美一区亚洲二区| 久久精品91| 麻豆91精品| 久久久精品性| 久久精品卡一| 久久精品中文字幕一区二区三区| 欧美va天堂| 亚洲精品影院| 99re国产精品| 国产日本精品| 国产亚洲精品v| 国产精品免费在线| 亚洲一区亚洲| 亚洲综合国产| 久久久福利视频| 久久午夜视频| 国产一区清纯| 亚洲激情二区| 亚洲深夜影院| 久久不射2019中文字幕| 狼狼综合久久久久综合网| 欧美一区二视频在线免费观看| 久久综合九色综合欧美狠狠| 欧美成人一区二免费视频软件| 久色成人在线| 激情欧美丁香| 国产精品日韩| 欧美暴力喷水在线| 亚洲高清视频一区二区| 9国产精品视频| 麻豆久久久9性大片| 欧美日韩喷水| 99热这里只有成人精品国产| 亚洲在线视频| 国产在线精品二区| 亚洲视频播放| 欧美久久电影| 99亚洲一区二区| 久久综合九色综合久99| 亚洲性图久久| 性色av一区二区怡红| 国内精品久久国产| 亚洲视频www| 欧美日韩亚洲一区| 国产亚洲精品bv在线观看| 老牛影视一区二区三区| 伊人激情综合| 久久国产一区| 日韩视频免费| 欧美精品一级| 亚洲中字黄色| 亚洲精品国产精品国自产观看| 亚洲中字在线| 亚洲精品麻豆| 欧美日韩视频| 久久精品一二三区| 中国成人在线视频| 1024成人| 欧美在线网站| 一区二区三区国产盗摄| 欧美亚韩一区| 久久婷婷av| 国产精品视频免费观看| 一区二区亚洲精品| 欧美 日韩 国产在线| 国产亚洲成人一区| 亚洲激情女人| 亚洲第一毛片| 狠狠入ady亚洲精品| 欧美一区二区三区四区在线观看地址| 亚洲看片网站| 在线看片欧美| 亚洲亚洲精品三区日韩精品在线视频| 久久精品五月婷婷| 免费看亚洲片| 国产精品色网| 国产午夜精品在线| 国产欧美丝祙| 一区二区三区福利| 一区二区高清视频| 一区二区高清| 国产精品区二区三区日本| 亚洲国产日韩美| 最新国产拍偷乱拍精品| 在线日韩中文| 亚洲神马久久| 国产一区成人| 免费在线亚洲欧美| 久久亚洲国产精品日日av夜夜| 香蕉久久国产| 欧美成人首页| 国内久久精品| 91久久黄色| 国产亚洲毛片在线| 国产精品婷婷| 久久青青草原一区二区| 欧美xxx在线观看| 国产一区自拍视频| 亚洲国产精品毛片| 亚洲美女黄色| 欧美亚洲三级| 欧美日韩国产精品一卡| 激情久久久久| 国产一区二区高清视频| 久久精品中文| 国产主播精品| 国产视频在线观看一区| 久久看片网站| 在线观看成人av电影| 国产精品久久久久久久久久直播| 午夜在线精品| 久久精品女人天堂| 女同性一区二区三区人了人一| 久久一区二区三区超碰国产精品| 欧美精品国产| 在线观看视频日韩| 男人的天堂亚洲在线| 欧美日韩亚洲一区在线观看| 亚洲第一网站| 久热这里只精品99re8久| 亚洲性图久久| 亚洲综合社区| 一区在线播放| 欧美一区二区三区在线免费观看| 一区二区自拍| 久久人人超碰| 在线亚洲成人| 国内精品福利| 久久综合伊人| 夜夜嗨av一区二区三区网站四季av| 久久久久欧美精品| 最新国产乱人伦偷精品免费网站| 免费在线一区二区| 亚洲三级影院| 欧美日韩午夜| 麻豆91精品| 一区二区久久| 黄色成人91| 欧美激情亚洲| 欧美亚洲一级| 国产日韩欧美二区| 影音先锋亚洲精品| 久久久av水蜜桃| 国产私拍一区|