【HTML5】記錄一下學習HTML5的一些新元素------(1)
一、Canvas
(canvas 解決了與靜態圖片互動的問題,可以動態建立和操作圖形影像) —這句話目前還不明白什麼意思,放在這裡
<canvas>
標籤只是圖形容器,本身沒有繪圖能力, 必須使用指令碼來繪製圖形。
- 預設情況下 元素沒有邊框和內容。
- 一個畫布 Canvas 在網頁中是一個矩形框,通過
<canvas>
元素來繪製. - 標籤通常需要指定一個id屬性 (指令碼中經常引用),width 和 height 屬性定義的畫布的大小。
1、 使用JS 來繪製影像:
getContext("2d")
: 內建的 HTML5 物件,擁有多種繪製路徑、矩形、圓形、字元以及新增影像的方法fillStyle
:填充矩形的樣式。預設設定是黑色。fillRect(x,y,width,height)
: 填充矩形的大小和方式;從(x,y)開始,繪製 width* height 大小的矩形;
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">
您的瀏覽器不支援 HTML5 canvas 標籤。
</canvas>
<script>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.fillStyle="#FF0000";
ctx.fillRect(0,0,150,75);
</script>
2、Canvas - 座標
- canvas 是一個二維網格。
- canvas 的左上角座標為 (0,0)
- 上面的 fillRect 方法擁有引數 (0,0,150,75)。
- 意思是:在畫布上繪製 150x75 的矩形,從左上角開始 (0,0)。
3、Canvas - 路徑
- 在
Canvas
上畫線需要用到: moveTo(x,y)
:定義線條開始座標lineTo(x,y)
:定義線條結束座標stroke()
:繪製出 moveTo() 到 lineTo() 方法之間的路徑。預設顏色是黑色。相當於 墨水beginPath()
:開始一條路徑,或重置當前的路徑。就比如在畫完一條路徑,需要再另外畫一條路徑時,就需要用到;如果不用,新路徑的樣式就會覆蓋掉舊路徑的樣式。
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
您的瀏覽器不支援 HTML5 canvas 標籤。</canvas>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.moveTo(0,0);
ctx.lineTo(200,100);
ctx.stroke();
在canvas中繪製圓形需要用到:
- arc() 方法建立弧/曲線(用於建立圓或部分圓)。
arc(x,y,r,start,stop,counterclockwise)
:(x,y)是圓心;r:半徑;start:起始角;stop:結束角;counterclockwise:可選。規定應該逆時針還是順時針繪圖。False = 順時針,true = 逆時針。- 通過 arc() 來建立圓,請把起始角設定為 0,結束角設定為 2*Math.PI。
<canvas id="myCanvas" width="300" height="150" style="border:1px solid #d3d3d3;">
您的瀏覽器不支援 HTML5 canvas 標籤。
</canvas>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.beginPath();
ctx.arc(100,75,50,0,2*Math.PI);
ctx.stroke();
4、Canvas - 文字
- 使用 canvas 繪製文字:
- font : 定義字型樣式和大小
- fillText(text,x,y) : 在 canvas 上繪製實心的文字 (相當於填充);text:填充的文字內容;(x,y):文字在畫布中開始的位置
- 可以用fillStyle =“red” 填充文字的顏色
- strokeText(text,x,y) : 在canvas 上繪製空心的文字(相當於用筆觸畫的)
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #d3d3d3;">
您的瀏覽器不支援 HTML5 canvas 標籤。</canvas>
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.font="20px Arial";
ctx.fillText("Hello World",10,50);
//空心的文字內容
ctx.strokeText("Hello World",10,50);
5、Canvas - 漸變
- 漸變可以填充在矩形, 圓形, 線條, 文字等等,有兩種不同的方式來設定Canvas漸變:
createLinearGradient(x,y,x1,y1)
: 建立線條漸變
createRadialGradient(x,y,r,x1,y1,r1)
: 建立一個徑向/圓漸變- 當我們使用漸變物件,必須使用兩種或兩種以上的停止顏色:
addColorStop(stop,color):
stop:0.0~ 1.0之間;漸變結束的位置。color:顏色值
createLinearGradient(x,y,x1,y1)、線條漸變
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
// Create gradient
var grd=ctx.createLinearGradient(0,0,200,0);
grd.addColorStop(0,"red");
grd.addColorStop(1,"white");
// Fill with gradient
ctx.fillStyle=grd;
ctx.fillRect(10,10,150,80);
相關文章
- HTML5學習筆記HTML筆記
- HTML5開發學習教程,學習HTML5還是學習HTML5的製作工具?HTML
- 第六課 Html5常用標籤 html5學習1HTML
- 學習HTML5還是學習HTML5的製作工具?HTML
- HTML5,CSS3,學習筆記HTMLCSSS3筆記
- 學習筆記~1.4 HTML5新特性筆記HTML
- HTML5 Geolocation學習HTML
- (交作業啦!!!)html5學習筆記?HTML筆記
- HTML5 學習小結HTML
- html5經驗記錄持續更新HTML
- HTML5如何學?HTML5該學什麼?HTML
- 記錄一下藍芽學習藍芽
- HTML5如何學?學HTML5要注意什麼?HTML
- HTML5如何實現菠菜軟體直播推流?值得學習一下!HTML
- 學習Html5需要哪些基礎?HTML
- web前端教程之HTMLCSS學習筆記HTML5基礎Web前端HTMLCSS筆記
- flutter學習記錄-1Flutter
- Spring學習記錄1Spring
- starrycan的pwn學習記錄1
- 第八課 表格 html5學習3HTML
- HTML5開發都要學習什麼?HTML
- HTML5全棧學習方式有哪些?HTML全棧
- HTML5 Drag and Drop 的一些總結HTML
- C++學習記錄1C++
- html5錄音功能實戰HTML
- HTML5大前端學到什麼程度可以拿高薪?HTML5學習教程限時贈送HTML前端高薪
- HTML5學習之Canvas基礎知識HTMLCanvas
- HTML5學習重點知識:JavaScript概述HTMLJavaScript
- html5好學嗎HTML
- 影像噪聲學習記錄(1)
- TA學習記錄Day1
- HTML5學習之Web Storage基礎知識HTMLWeb
- HTML5前端學習路線,新手小白必備HTML前端
- html5進階學習第二天HTML
- 7個HTML5移動開發框架,初學HTML5必看HTML移動開發框架
- 好程式設計師web前端分享HTML5中的nav標籤學習筆記程式設計師Web前端HTML筆記
- HTML5與CSS3權威指南筆記案例1HTMLCSSS3筆記
- day 1 c++小白學習記錄C++