国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > HTML > 正文

HTML5 Canvas——用路徑描畫線條實(shí)例介紹

2020-03-24 18:16:53
字體:
供稿:網(wǎng)友
原文:
http://www.lifelaf.com/blog/?p=371
本文翻譯自Steve Fulton Jeff Fulton HTML5 Canvas, Chapter 2, Using Paths to Create Lines

對(duì)于HTML5 Canvas,我們可以使用 路徑 來描畫任何圖形。路徑,簡(jiǎn)單來說就是一系列的點(diǎn)以及連接這些點(diǎn)的線。任何Canvas上下文只會(huì)有一個(gè) 當(dāng)前路徑 ,而當(dāng)context.save()調(diào)用時(shí),該 當(dāng)前路徑 并不會(huì)被保存。

路徑的開始與結(jié)束

調(diào)用beginPath()可以開始一個(gè)路徑,而調(diào)用closePath()則會(huì)令該路徑結(jié)束。如果連接路徑中的點(diǎn),那么這種連接就構(gòu)成了一個(gè) 子路徑 。如果 子路徑 中最后一個(gè)點(diǎn)與其自身的第一個(gè)點(diǎn)相連,我們就認(rèn)為該 子路徑 是 閉合 的。

線條的描繪

最基本的路徑操作由反復(fù)調(diào)用moveTo()和lineTo()命令組成。比如以下這個(gè)例子:

復(fù)制代碼代碼如下:
function drawScreen() {
context.strokeStyle = "black";
context.lineWidth = 10;
context.lineCap = 'square';
context.beginPath();
context.moveTo(20, 0);
context.lineTo(100, 0);
context.stroke();
context.closePath();
}

在上面的例子中,我們描畫了一條水平的、寬度為10個(gè)像素的線段;與此同時(shí),我們還設(shè)定了lineCap與strokeStyle屬性。以下是一些常用的屬性列表:

lineCap
lineCap定義了在Canvas中線段兩頭的樣式,可設(shè)置為以下三個(gè)值中的一個(gè):

butt。默認(rèn)值;在線段的兩頭添加平直邊緣。
round。在線段的兩頭各添加一個(gè)半圓形線帽。線帽直徑等于線段的寬度。
square。在線段的兩頭添加正方形線帽。線帽邊長(zhǎng)等于線段的寬度。
lineJoin
lineJoin定義了兩條線段相交處的彎角樣式。以下為三個(gè)可選的值:

miter。默認(rèn)值;創(chuàng)建一個(gè)尖角。可以通過設(shè)置miterLimit屬性來對(duì)尖角長(zhǎng)度進(jìn)行限制 miterLimit為尖角長(zhǎng)度和線條寬度之比的最大值,默認(rèn)為10。
bevel。創(chuàng)建一個(gè)斜角。
round。創(chuàng)建一個(gè)圓角。
lineWidth
lineWidth定義了線條的粗細(xì),默認(rèn)為1.0。

strokeStyle
strokeStyle定義了用于渲染線條的顏色等樣式。

譯注:當(dāng)lineJoin設(shè)定為miter,但是尖角長(zhǎng)度超過了miterLimit的限制時(shí),Canvas將顯示 bevel 彎角效果。html教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 开阳县| 仙居县| 桂平市| 涞源县| 延津县| 江油市| 津市市| 左权县| 满洲里市| 延川县| 兴业县| 宁城县| 上思县| 江门市| 集安市| 贺兰县| 孝义市| 兴隆县| 乌兰浩特市| 玛多县| 宣化县| 紫云| 望都县| 类乌齐县| 皮山县| 和田县| 鹿邑县| 上饶县| 中阳县| 南丹县| 方山县| 厦门市| 和政县| 蓬溪县| 普洱| 密云县| 东城区| 辛集市| 琼海市| 郎溪县| 岑巩县|