国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【HTML5】 canvas 繪制圖形

這篇具有很好參考價值的文章主要介紹了【HTML5】 canvas 繪制圖形。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、基本用法

  • canvas 標簽:可用于在網(wǎng)頁上繪制圖形(使用 JavaScript 在網(wǎng)頁上繪制圖像)
  • 畫布是一個矩形區(qū)域,通過控制其每一像素繪制路徑、矩形、圓形、字符以及添加圖像。
  • 創(chuàng)建一個canvas:width 和 height 是必備屬性,id 是為了在 js 中獲取改元素。
<canvas id="myCanvas" width="200" height="100"></canvas>
  • 在 js 中繪制 canvas
<script type="text/javascript">
// 通過 id 查找到 canvas 元素
var c = document.getElementById("myCanvas");
// 創(chuàng)建 context 對象
var cxt = c.getContext("2d");
// 繪制矩形(前2個參數(shù)為在canvas里面的矩形左上角起點坐標,第3個參數(shù)是寬,第4個參數(shù)是高)
cxt.fillRect(0,0,150,75);
// 填充顏色
cxt.fillStyle="#FF0000";
</script>

二、用法詳見

2.0、方法屬性

  • context 對象屬性
屬性 描述
fillStyle 設置或返回用于填充繪圖的顏色、漸變或圖案。
strokeStyle 設置或返回用于筆劃的顏色、漸變或圖案。
shadowColor 設置或返回用于陰影的顏色。
shadowBlur 設置或返回陰影的模糊級別。
shadowOffsetX 設置或返回陰影到形狀的水平距離。
shadowOffsetY 設置或返回陰影到形狀的垂直距離。
  • context 對象方法
方法 描述
fill() 填充當前圖形(路徑)。
stroke() 實際上繪制您定義的路徑。
beginPath() 開始路徑,或重置當前路徑。
closePath() 創(chuàng)建從當前點返回起點的路徑。

2.1、繪制線條

  • 線條方法
方法 描述 繪制
moveTo() 劃線起始點
lineTo() 畫線到另一個點
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;"></canvas>
<script type="text/javascript">
// 通過 id 查找到 canvas 元素
var c = document.getElementById("myCanvas");
// 創(chuàng)建 context 對象
var cxt = c.getContext("2d");
// 線條起點坐標
cxt.moveTo(10,10);
// 折點坐標
cxt.lineTo(150,50);
// 折點坐標
cxt.lineTo(10,50);
// 繪制當前或已經(jīng)存在的路徑的方法
cxt.stroke();
</script>

【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas

  • 專有屬性
屬性 描述
lineWidth 繪制時要使用的線條寬度 像素
lineCap 定義線的端部樣式 round(圓形) square(方形)、butt(平直,默認值)
lineJoin 設置或返回兩條線相交時創(chuàng)建的角的類型 bevel(斜角)、round(圓角) miter(尖角,默認值)
ctx.beginPath();
ctx.moveTo(0, 0);
ctx.lineTo(200, 100);
ctx.lineWidth = 10;
ctx.strokeStyle = "red";
ctx.lineCap = "round";
ctx.stroke();

2.2、繪制矩形

  • fillRect() 方法:向路徑添加一個填充的矩形 context.fillRect(x, y, width, height)
  • strokeRect() 方法:向路徑添加一個無填充矩形 context.fillRect(x, y, width, height)
  • rect() 方法:向路徑添加一個矩形 context.rect(x, y, width, height)
1. strokeRect(30, 30, 50, 50) 
等價于:
	ctx.rect(30, 30, 50, 50);
	ctx.stroke();
2. fillRect(30, 30, 50, 50) 
等價于:
	ctx.rect(30, 30, 50, 50);
	ctx.fill();
參數(shù) 描述
x 矩形左上角的 x 坐標。
y 矩形左上角的 y 坐標。
width 矩形的寬度,以像素為單位。
height 矩形的高度,以像素為單位。
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

// 紅色矩形
ctx.beginPath();
ctx.lineWidth = "6";
ctx.strokeStyle = "red";
ctx.fillStyle = "yellow"	// 在 strokeRect 中不生效
ctx.strokeRect(5, 5, 290, 140);

// 綠色矩形
ctx.beginPath();
ctx.lineWidth = "4";		// 在 fillRect 中不生效
ctx.strokeStyle = "green";	// 在 fillRect 中不生效
ctx.fillStyle = "yellow"
ctx.fillRect(30, 30, 50, 50);

【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas

2.3、繪制圓形

  • arc() 方法:向路徑添加一個圓形 context.arc(x,y,r,start,end)
參數(shù) 描述
x 圓心的x軸坐標
y 圓心的y軸坐標
r 圓弧的半徑
start 圓弧的起始點
end 圓弧的終點
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;"></canvas>
<script type="text/javascript">
// 通過 id 查找到 canvas 元素
var c = document.getElementById("myCanvas");
// 創(chuàng)建 context 對象
var cxt = c.getContext("2d");
// 填充顏色
cxt.fillStyle="#FF0000";
// 創(chuàng)建一個新的路徑
cxt.beginPath();
// 繪制圓弧路徑的方法(圓心的x軸坐標,圓心的y軸坐標,圓弧的半徑,圓弧的起始點,圓弧的終點,true逆時針繪制圓弧false順時針繪制)
cxt.arc(70,18,15,0,Math.PI*2,true);
// 返回到當前路徑起始點的方法
cxt.closePath();
// 填充當前或已存在的路徑的方法
cxt.fill();
</script>

【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas

2.4、繪制文本

  • fillText(text,x,y):在畫布上繪制“填充的”文本
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

ctx.font = "30px Arial";
ctx.fillText("Hello World", 10, 50);

【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas

  • strokeText(text,x,y):在畫布上繪制文本(無填充)
const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");

ctx.font = "30px Arial";
ctx.strokeText("Hello World", 10, 50);

【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas

  • 專有屬性:
屬性 描述
font 設置或返回文本內(nèi)容的當前字體屬性。
textAlign 設置或返回文本內(nèi)容的當前對齊方式。
textBaseline 設置或返回繪制文本時使用的當前文本基線。
  • font 屬性:使用的語法與 CSS font 屬性相同。

  • textAlign 屬性
    【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas文章來源地址http://www.zghlxwxcb.cn/news/detail-799726.html

描述
start 默認。文本在指定的位置開始。
end 文本在指定的位置結束。
center 文本的中心被放置在指定的位置。
left 文本左對齊。
right 文本右對齊。
  • textBaseline 屬性
    【HTML5】 canvas 繪制圖形,HTML 筆記,html5,前端,html,canvas
描述
alphabetic 默認。文本基線是普通的字母基線。
top 文本基線是 em 方框的頂端。
hanging 文本基線是懸掛基線。
middle 文本基線是 em 方框的正中。
ideographic 文本基線是表意基線。
bottom 文本基線是 em 方框的底端。

2.5、填充圖像

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;"></canvas>
<script type="text/javascript">
// 通過 id 查找到 canvas 元素
var c = document.getElementById("myCanvas");
// 創(chuàng)建 context 對象
var cxt = c.getContext("2d");
var img = document.getElementById("scream");
// 放置圖片 (圖片,image的左上角在目標畫布上X軸坐標,image的左上角在目標畫布上Y軸坐標)
ctx.drawImage(img, 10, 10)
</script>

到了這里,關于【HTML5】 canvas 繪制圖形的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 編程筆記 html5&css&js 032 HTML Canvas

    Canvas畫布,就是可以用來畫畫的地方,不是用戶在瀏覽器上畫圖,而是會javascript畫圖。這區(qū)別于直接載入一張圖片,是可以根據(jù)需要進行繪制。 HTML canvas 元素用于通過腳本(通常是 JavaScript)動態(tài)地繪制圖形。 canvas 元素只是圖形的容器。您必須使用腳本來繪制實際的圖形。

    2024年01月23日
    瀏覽(34)
  • 前端酷炫合集--炫酷Html5 Canvas做一個霧狀擴散火焰動畫
  • html5學習筆記15-內(nèi)聯(lián)SVG 可縮放矢量圖形

    https://www.runoob.com/html/html5-svg.html SVG 圖形的容器。SVG 有多種繪制路徑、框、圓、文本和圖形圖像的方法。 可伸縮矢量圖形 (Scalable Vector Graphics) SVG 用于定義用于網(wǎng)絡的基于矢量的圖形 SVG 使用 XML 格式定義圖形 SVG 圖像在放大或改變尺寸的情況下其圖形質量不會有損失 SVG 是萬

    2024年02月11日
    瀏覽(24)
  • html5——前端筆記

    html5——前端筆記

    html頁面: !DOCTYPE 不是一個 HTML 標簽,它就是 文檔類型聲明標簽,這句代碼的意思是: 當前頁面采取的是 HTML5 版本來顯示網(wǎng)頁 聲明位于文檔中的最前面的位置,處于 標簽之前。 不是一個 HTML 標簽,它就是 文檔類型聲明標簽。 lang 語言種類,用來定義當前文檔顯示的語言。

    2024年02月10日
    瀏覽(21)
  • LeaferUI - 性能強悍、簡潔輕量的 HTML5 Canvas 2D 圖形 UI 繪圖框架,用于 web 端在線圖形設計、圖表、白板、數(shù)據(jù)可視化等場景

    LeaferUI - 性能強悍、簡潔輕量的 HTML5 Canvas 2D 圖形 UI 繪圖框架,用于 web 端在線圖形設計、圖表、白板、數(shù)據(jù)可視化等場景

    最近想做一個輕巧的在線畫冊和海報設計工具,最近發(fā)布的 LeaferUI 特別適合這樣的場景。 LeaferUI 是什么? Leafer UI?是基于?LeaferJS?開發(fā)的一套絢麗多彩的 UI 繪圖框架,幫助開發(fā)者快速生成圖形界面。LeaferJS 是一個基于 HTML5 Canvas 開發(fā)的 2D 繪圖渲染引擎,在 web 上繪圖性能非

    2024年02月13日
    瀏覽(22)
  • 2023前端面試筆記 —— HTML5

    2023前端面試筆記 —— HTML5

    內(nèi)容 鏈接 2023前端面試筆記 HTML5 HTML5作為最新的HTML標準,為前端開發(fā)帶來了許多新的特性和功能。在前端面試中,HTML5的知識和應用已經(jīng)成為了必備的技能。本篇文章將總結HTML5的 重要知識點和常見面試題 ,幫助讀者更好地準備前端面試,提升自己的競爭力。 HTML 超文本標記

    2024年02月11日
    瀏覽(22)
  • HTML5 Canvas(畫布)

    HTML5 Canvas(畫布)

    canvas標簽定義圖形,比如圖表和其他圖像,你必須用腳本來繪制圖形。 在畫布上( Canvas )畫一個共紅色矩形,漸變矩形,彩色矩形,和一些彩色文字。 HTML5canvas元素用于圖形繪制,通過腳本(通常是 Javascript)來完成。 canvas標簽是圖形容器,必須使用腳來繪制圖形。 你可以

    2024年02月14日
    瀏覽(31)
  • h5(html5)+css3前端筆記二

    h5(html5)+css3前端筆記二

    一、表格標簽 表格的主要作用: 表格主要用于 顯示、展示數(shù)據(jù) ,因為它可以讓數(shù)據(jù)顯示的非常的規(guī)整,可讀性非常好。特別是后臺展示數(shù)據(jù)的時候,能夠熟練運用表格就顯得很重要。一個清爽簡約的表格能夠把繁雜的數(shù)據(jù)表現(xiàn)得很有條理。 1. table/table 用來定義表格的標簽

    2024年02月14日
    瀏覽(32)
  • HTML5+CSS3+移動web 前端開發(fā)入門筆記(二)HTML標簽詳解

    HTML5+CSS3+移動web 前端開發(fā)入門筆記(二)HTML標簽詳解

    排版標簽用于對網(wǎng)頁內(nèi)容進行布局和樣式的調(diào)整。下面是對常見排版標簽的詳細介紹: 標題使用至標簽進行定義。定義最大的標題,定義最小的標題。具有align屬性,屬性值可以是:left、center、right。 將給定的HTML代碼轉換為Markdown格式的標題標簽如下所示: 效果演示: H3:

    2024年02月07日
    瀏覽(40)
  • 關于HTML5畫布canvas的功能

    關于HTML5畫布canvas的功能

    一、畫布的使用 1、首先創(chuàng)建一個畫布(canvas) canvas id=”myCanvas” width=”200” height=”100” style=”border:1px solid #000000”/canvas 2、使用JavaScript來繪制圖像 script Var c=document.getElementByID(“myCanvas”)//得到畫布 Var ctx=c.getContext(“2d”);//得到畫筆 Cxt.fillStyle=”#FF0000”;//填充顏色 Cxt

    2024年02月06日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包