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

首頁 > 編程 > HTML > 正文

HTML5邊玩邊學(1)畫布實現方法

2024-08-26 00:16:28
字體:
來源:轉載
供稿:網友

點評:Html5 引入了一個新的 標簽,這個標簽所代表的區域就好象一塊畫布,你的所有圖形繪制最后都要在這塊畫布上呈現。有了這個標簽,瀏覽器的圖形表現力被極大的提升,Flash 和 SilverLight 有沒有感到威脅呢?

一、<canvas>標簽

Html5 引入了一個新的 <canvas> 標簽,這個標簽所代表的區域就好象一塊畫布,你的所有圖形繪制最后都要在這塊畫布上呈現。有了這個標簽,瀏覽器的圖形表現力被極大的提升,Flash 和 SilverLight 有沒有感到威脅呢?

新聞鏈接:Google聲稱Chrome7瀏覽器將提速60倍

<canvas>標簽的用法非常簡單,如下:

復制代碼

代碼如下:


<canvas>
你的瀏覽器不支持 Canvas 標簽
</canvas>



<canvas>標簽和普通的 HTML 標簽沒有多大的區別,你可以設置它的寬度和高度,可以通過 CSS 設置它的背景色、邊框樣式等等。

你可以在 這里 找到關于 <canvas> 標簽的更多內容。

標簽中間的內容是替換內容,如果用戶的瀏覽器不支持 <canvas> 標簽,這段內容就會被顯示出來;如果用戶的瀏覽器支持 <canvas> 標簽,則這段內容將被忽略。

上面的 <canvas> 代碼顯示效果如下:

你的瀏覽器不支持 Canvas 標簽

如果你用的是IE瀏覽器,可能只能看到一個提示;如果你用的是谷歌瀏覽器或者火狐瀏覽器,你就可以看到一個紅色的方塊區域。
二、渲染上下文 Rendering Context
其實光有 <canvas> 標簽我們并不能作任何事情,玩過 Windows 編程的同學都知道,在 Windows 里面繪圖先要得到一個設備上下文 DC ,在 <canvas> 標簽上繪圖也需要先得到一個渲染上下文,我們的圖形并不是直接畫到屏幕上的,而是先畫到上下文(Context)上,然后再刷新到屏幕上面的。
題外話: 為什么要整出一個“上下文”這么復雜的概念呢?因為有了上下文對象,我們就可以讓各種不同的圖形設備在我們眼里面看起都是一個樣,我們只需要專注于繪圖,其他的工作就讓操作系統和瀏覽器去操心吧,說白了就是把各式各樣的具體變成統一的抽象,從而減輕我們的負擔。
獲取上下文非常簡單,只需要如下兩行代碼:
var canvas = document.getElementById('tutorial');
var ctx = canvas.getContext('2d');
首先獲取 canvas 對象,然后調用 canvas 對象的 getContext 方法,這個方法目前只能傳入參數 "2d",不久的將來他可能會支持參數 "3d",你一定明白那意味著什么,讓我們期待吧。
getContext 方法返回一個 CanvasRenderingContext2D 對象 ,即渲染上下文對象,你可以在 這里 找到關于它的更多內容,都是一些繪圖方法。

三、瀏覽器支持
除了在那些不支持的瀏覽器上顯示替用內容之外,我們還可以通過腳本的方式來檢查瀏覽器是否支持 canvas ,方法很簡單,判斷 getContext 函數是否存在即可,代碼如下:

復制代碼

代碼如下:


var canvas = document.getElementById('tutorial');
if (canvas.getContext){
alert("支持 <canvas> 標簽");
} else {
alert("不支持 <canvas> 標簽");
}



四、一個小例子
下面將用 HTML5 的繪圖功能演示一個上下移動的線條的例子, 具體的代碼將在后續內容中給出



提示:您可以先修改部分代碼再運行


你的瀏覽器不支持 <canvas>標簽,請使用 Chrome 瀏覽器 或者 FireFox 瀏覽器

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宜州市| 冷水江市| 雷波县| 维西| 吉安县| 昌江| 玛曲县| 武鸣县| 临邑县| 海城市| 乌鲁木齐县| 岑巩县| 金溪县| 盘锦市| 长葛市| 揭东县| 隆回县| 丰都县| 囊谦县| 比如县| 天全县| 禹城市| 郓城县| 平陆县| 化州市| 宿松县| 巴林右旗| 刚察县| 美姑县| 嘉兴市| 江永县| 仲巴县| 明光市| 英超| 沁水县| 丰原市| 衡山县| 海伦市| 会宁县| 邮箱| 石屏县|