HTML5 Canvas基礎(chǔ)教程

出版時間:2012-1  出版社:人民郵電出版社  作者:Rob Hawkes  頁數(shù):243  譯者:周廣新,曾少寧,盛海艷 等  
Tag標(biāo)簽:無  

內(nèi)容概要

  《HTML5
Canvas基礎(chǔ)教程》從HTML5和JavaScript(以及jQuery)的基礎(chǔ)知識講起,全面介紹了HTML5
Canvas的各種特性,包括渲染上下文、坐標(biāo)系統(tǒng)、繪制圖形、保存和恢復(fù)畫布狀態(tài),以及變形、合成、處理圖像和視頻等,讓讀者對Canvas建立起完整的認(rèn)識。隨后討論了動畫循環(huán)、記憶形狀、模擬運(yùn)動、碰撞檢測等基本而又重要的概念,帶領(lǐng)讀者溫習(xí)了必要的數(shù)學(xué)和物理知識。通過帶領(lǐng)讀者動手開發(fā)“太空保齡球”和“躲避小行星”這兩款小游戲,讓讀者掌握開發(fā)游戲的基本流程,學(xué)會響應(yīng)用戶操作、創(chuàng)造虛擬環(huán)境、循環(huán)利用對象、設(shè)計(jì)計(jì)分系統(tǒng)等游戲開發(fā)必備的知識。
  《HTML5 Canvas基礎(chǔ)教程》適合各層次Web設(shè)計(jì)及開發(fā)人員閱讀。

作者簡介

Rob Hawkes,現(xiàn)任Mozilla技術(shù)布道師,國際知名的HTML5開發(fā)專家,被譽(yù)為“HTML5的化身”(Person of
HTML5),是名噪一時的“Google彈跳球”圖標(biāo)的HTML5
Canvas實(shí)現(xiàn)者。Rob可以說是寫著代碼長大的,他對設(shè)計(jì)交互程序如醉如癡,對HTML5及其他Web新技術(shù)有著濃厚的興趣。他曾在伯恩茅斯大學(xué)(Bournemouth
University)學(xué)習(xí)交互媒體制作(Interactive Media
Production)。大學(xué)未畢業(yè),就已經(jīng)獲得了Mozilla公司的工作機(jī)會。他經(jīng)?;钴S在HTML5和游戲開發(fā)的各種會議上。
要想了解Rob和他經(jīng)常參加的會議,可以訪問他的網(wǎng)站http://rawkes.com),或者加他的Twitter(@robhawkes)。

書籍目錄

第1章 HTML5簡介 
1.1 HTML簡史 
1.2 為什么需要HTML5 
1.2.1 問題 
1.2.2 解決問題 
1.3 HTML5的新特性 
1.3.1 結(jié)構(gòu)和內(nèi)容元素 
1.3.2 表單 
1.3.3 媒體元素 
1.4 剖析HTML5頁面的結(jié)構(gòu) 
1.5 對HTML5的誤解 
1.5.1 CSS3誤解 
1.5.2 Web Fonts誤解 
1.5.3 Geolocation誤解 
1.5.4 SVG誤解 
1.5.5 Web Storage誤解 
1.5.6 Web Workers誤解 
1.5.7 WebSocket誤解 
1.6 小結(jié) 
第2章 JavaScript基礎(chǔ) 
2.1 JavaScript概述 
2.2 jQuery 
2.2.1 jQuery是什么 
2.2.2 為什么要使用它 
2.2.3 這是在誤導(dǎo)你嗎 
2.2.4 是否不需要理解純JavaScript 
2.2.5 如何使用jQuery 
2.3 在HTML頁面上添加JavaScript 
2.4 在頁面加載之后運(yùn)行JavaScript 
2.4.1 錯誤的方法(window.onload事件) 
2.4.2 冗長的方法(DOM) 
2.4.3 簡單的方法(jQuery方法) 
2.5 變量與數(shù)據(jù)類型 
2.5.1 變量 
2.5.2 數(shù)據(jù)類型 
2.6 條件語句 
2.6.1 if語句 
2.6.2 比較運(yùn)算符 
2.6.3 在if語句中進(jìn)行多重布爾值檢查 
2.6.4 else和else if語句 
2.7 函數(shù) 
2.7.1 創(chuàng)建函數(shù) 
2.7.2 調(diào)用函數(shù) 
2.8 對象 
2.8.1 什么是對象 
2.8.2 創(chuàng)建和使用對象 
2.9 數(shù)組 
2.9.1 創(chuàng)建數(shù)組 
2.9.2 訪問和修改數(shù)組 
2.10 循環(huán) 
2.11 定時器 
2.11.1 設(shè)置一次性定時器 
2.11.2 取消一次性定時器 
2.11.3 設(shè)置重復(fù)定時器 
2.11.4 取消重復(fù)定時器 
2.12 DOM 
2.12.1 HTML網(wǎng)頁示例 
2.12.2 使用純JavaScript訪問DOM 
2.12.3 使用jQuery訪問DOM 
2.12.4 操作DOM 
2.13 小結(jié) 
第3章 Canvas基礎(chǔ)知識 
3.1 認(rèn)識canvas元素 
3.2 2D渲染上下文 
3.2.1 坐標(biāo)系統(tǒng) 
3.2.2 訪問2D渲染上下文 
3.3 繪制基本圖形和線條 
3.3.1 線條 
3.3.2 圓形 
3.4 樣式 
3.5 繪制文本 
3.6 擦除Canvas 
3.7 使Canvas填滿瀏覽器窗口 
3.8 小結(jié) 
第4章 Canvas高級功能 
4.1 保存和恢復(fù)繪圖狀態(tài) 
4.1.1 畫布繪圖狀態(tài)是什么 
4.1.2 保存繪圖狀態(tài) 
4.1.3 恢復(fù)繪圖狀態(tài) 
4.1.4 保存和恢復(fù)多個繪圖狀態(tài) 
4.2 變形 
4.2.1 平移 
4.2.2 縮放 
4.2.3 旋轉(zhuǎn) 
4.2.4 變換矩陣 
4.3 合成 
4.3.1 全局阿爾法值 
4.3.2 合成操作 
4.4 陰影 
4.5 漸變 
4.6 復(fù)雜路徑 
4.7 將畫布導(dǎo)出為圖像 
4.8 小結(jié) 
第5章 處理圖像和視頻 
5.1 加載圖像 
5.2 調(diào)整和裁剪圖像 
5.2.1 調(diào)整圖像大小 
5.2.2 裁剪圖像 
5.2.3 陰影 
5.3 圖像變形 
5.3.1 平移 
5.3.2 旋轉(zhuǎn) 
5.3.3 縮放與翻轉(zhuǎn) 
5.4 訪問像素值 
5.5 從零繪制圖像 
5.5.1 隨機(jī)繪制像素 
5.5.2 創(chuàng)建馬賽克效果 
5.6 基本圖像效果 
5.6.1 反轉(zhuǎn)顏色 
5.6.2 灰度 
5.6.3 像素化 
5.7 視頻處理 
5.7.1 創(chuàng)建HTML5video元素 
5.7.2 使用HTML5video API 
5.7.3 設(shè)置畫布 
5.8 小結(jié) 
第6章 制作動畫 
6.1 畫布中的動畫 
6.2 創(chuàng)建動畫循環(huán) 
6.2.1 循環(huán) 
6.2.2 更新、清除、繪制 
6.3 記憶要繪制的形狀 
6.3.1 錯誤的方法 
6.3.2 正確的方法 
6.3.3 隨機(jī)產(chǎn)生形狀 
6.4 改變方向 
6.5 圓周運(yùn)動 
6.5.1 三角函數(shù) 
6.5.2 綜合運(yùn)用 
6.6 反彈 
6.7 小結(jié) 
第7章 實(shí)現(xiàn)高級動畫 
7.1 物理常識 
7.1.1 什么是物理學(xué) 
7.1.2 物理學(xué)對創(chuàng)建動畫有何作用 
7.1.3 基本概念 
7.1.4 牛頓運(yùn)動定律 
7.2 運(yùn)用物理知識創(chuàng)建動畫 
7.2.1 準(zhǔn)備工作 
7.2.2 速度 
7.2.3 添加邊界 
7.2.4 加速度 
7.2.5 摩擦力 
7.3 碰撞檢測 
7.3.1 碰撞檢測 
7.3.2 彈開物體 
7.3.3 動量守恒 
7.4 小結(jié) 
第8章 太空保齡球游戲 
8.1 游戲概述 
8.2 核心功能 
8.2.1 構(gòu)建HTML代碼 
8.2.2 美化界面 
8.2.3 編寫JavaScript代碼 
8.3 激活用戶界面 
8.4 創(chuàng)建游戲?qū)ο蟆?br />8.4.1 創(chuàng)建平臺 
8.4.2 創(chuàng)建小行星 
8.4.3 創(chuàng)建玩家使用的小行星 
8.4.4 更新UI 
8.5 讓對象運(yùn)動起來 
8.6 檢測用戶交互 
8.6.1 建立事件監(jiān)聽器 
8.6.2 選中玩家使用的小行星 
8.6.3 增加力度 
8.6.4 讓玩家使用的小行星動起來 
8.6.5 可視化用戶輸入 
8.7 重置player 
8.8 玩家獲勝 
8.8.1 更新分?jǐn)?shù) 
8.8.2 從平臺上刪除小行星 
8.9 小結(jié) 
第9章 躲避小行星游戲 
9.1 游戲概述 
9.2 核心功能 
9.2.1 創(chuàng)建HTML 代碼 
9.2.2 美化界面 
9.2.3 編寫JavaScript代碼 
9.3 創(chuàng)建游戲?qū)ο蟆?br />9.3.1 創(chuàng)建小行星 
9.3.2 創(chuàng)建玩家使用的火箭 
9.4 檢測鍵盤輸入 
9.4.1 鍵值 
9.4.2 鍵盤事件 
9.5 讓對象運(yùn)動起來 
9.6 假造橫向卷軸效果 
9.6.1 循環(huán)利用小行星 
9.6.2 添加邊界 
9.6.3 讓玩家保持連續(xù)移動 
9.7 添加聲音 
9.8 結(jié)束游戲 
9.8.1 計(jì)分系統(tǒng) 
9.8.2 殺死玩家 
9.9 增加游戲難度 
9.10 小結(jié) 
第10章 未來的Canvas 
10.1 Canvas與SVG 
10.1.1 可訪問性 
10.1.2 位圖與矢量圖 
10.2 Canvas與Flash 
10.2.1 JavaScript開發(fā)人員可以借鑒Flash 
10.2.2 Canvas沒有像Flash那樣用戶友好的編輯器 
10.3 Canvas與性能 
10.4 Canvas游戲和動畫庫 
10.5 三維圖形 
10.6 與外圍設(shè)備交互 
10.7 用WebSocket技術(shù)構(gòu)建多人游戲 
10.8 靈感 
10.8.1 Sketch Out游戲 
10.8.2 Z-Type游戲 
10.8.3 Sinuous游戲 
10.9 小結(jié)和結(jié)束語 

章節(jié)摘錄

版權(quán)頁:   插圖:   7.1.2物理學(xué)對創(chuàng)建動畫有何作用 理解了物理學(xué),你就能夠創(chuàng)建更加逼真和具有動態(tài)效果的動畫。也許現(xiàn)在你還無法明顯感受到這一點(diǎn)。無論是使用速度、加速度這些簡單概念,還是構(gòu)建一個包含不同方向作用力的完善系統(tǒng),通過學(xué)習(xí)物理學(xué),我們才能真實(shí)而全面地展現(xiàn)動畫效果。物理學(xué)概念不僅是制作逼真動畫的基礎(chǔ),它們還是在各種動畫(從游戲和數(shù)據(jù)可視化一直到卡通和電影)中經(jīng)過反復(fù)驗(yàn)證的概念。 7.1.3基本概念 學(xué)習(xí)物理的關(guān)鍵是了解一些基本術(shù)語和單位,因?yàn)樵谝恍┹^復(fù)雜的概念中通常要使用它們。雖然你不一定會用到所有術(shù)語,但簡要了解它們有益于日后學(xué)習(xí)。這樣,在后面的代碼中用到這些術(shù)語時,你會更明確它們的意義。 1.力 力是作用于物體的推力或拉力。它會使物體改變速率、方向或形狀。力既有數(shù)量(大小或距離)也有方向,這說明可以把力看作矢量(vector)。力的單位是牛頓(N)。 2.矢量 矢量是具有大小和方向的量(如力)。矢量可以用圖形來表示,通常用一條從原點(diǎn)出發(fā)并指向終點(diǎn)的線段來表示。其中,長度代表矢量的大小,箭頭表示矢量的方向。 3.質(zhì)量 質(zhì)量是一種阻礙物體在力的作用下加速的物理量,也用來衡量慣性。當(dāng)力作用于物體時,質(zhì)量將直接影響加速度的大小。例如,相同的力作用于質(zhì)量不同的兩個物體,則質(zhì)量較大的物體的加速度小于質(zhì)量較小的物體的加速度。質(zhì)量的單位是千克(kg)。 4.重力 物體的質(zhì)量受另一個物體引力的作用而產(chǎn)生的力稱為重力。重力是物體存在重量的原因。重力的計(jì)算方法是:將物體的質(zhì)量乘以地球引力。因此,地球表面的物體比高空中相同的物體要重一些——高空中的地球引力稍微小一些。在地球表面,重力通常使用質(zhì)量的單位(kg),但實(shí)際應(yīng)該使用力的單位:牛頓(N)。 5.摩擦力 摩擦力是一種阻止一個物體沿著另一個物體表面運(yùn)動的力。正是由于摩擦力的存在,相對于地毯之類的物體,冰才顯得更光滑一些。

編輯推薦

《HTML 5 Canvas基礎(chǔ)教程》的行文通俗易懂,既貼近初學(xué)者,也同樣適合專業(yè)人員。那些希望將知識面拓寬到Web和移動設(shè)備上的Flash和Silverlight開發(fā)人員也能從中受益。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    HTML5 Canvas基礎(chǔ)教程 PDF格式下載


用戶評論 (總計(jì)70條)

 
 

  •   Canvas作為HTML5的新特性,對于以后的開發(fā)有著很大的作用,這本書講得比較詳細(xì)。
  •   這本書是我看了HTML 5與CSS權(quán)威指南之后看的書,我覺得,里面講canvas的部分,和權(quán)威指南略有不同,各有特點(diǎn),所以我覺得買這本書之前,應(yīng)該買多一本權(quán)威指南。這樣對初學(xué)者來說會比較適合,還有個地方就是學(xué)canvas必須對javascript有所了解,甚至精通最好!
  •   基礎(chǔ)知識介紹,讓我系統(tǒng)了解了Html5的Canvas的一些api
  •   html5 canvas基礎(chǔ)學(xué)習(xí)必備。
  •   個人很喜歡研究一些算法和前臺的華麗效果,相信再過幾年中國的HTML5也會普及,同時對新特性之一的Canvas特別感興趣,希望從這本書里得到些精華。
  •   書的紙質(zhì)很好,對于學(xué)canvas很有幫助,學(xué)html5必學(xué)canvas
  •   這本書不錯,之前買了本 html5+css3的,好像是國內(nèi)編寫的。 評論500多條。我也興奮的買了。 剛買到,就直接退貨了。什么書啊是。
    但是這本我看了下,不錯的。 本人極力推薦這本書,寫的很好
  •   以Cancas為切入點(diǎn),迅速延伸到HTML5的各個角落,著實(shí)不錯
  •   學(xué)HTML5必學(xué)的一個繪圖標(biāo)簽,內(nèi)容充實(shí),合理,贊一個
  •   初學(xué)Canvas看這本書完全沒錯,可讀性非常高。
    作者寫得內(nèi)容被很完美的翻譯過來,我不僅要向作者致敬還要向譯者致敬。
    完全的將書中精髓部分全部翻譯出來,而且翻譯的非常有靈魂。
    由衷的感謝!
  •   很適合Canvas入門的朋友!
  •   少有的專門介紹canvas的書籍
  •   canvas ji chu zhi shi ,
  •   還沒開始仔細(xì)看,大概上翻看了一下,是從游戲的實(shí)例入手講解的,需要些JavaScript基礎(chǔ),可惜沒有習(xí)題。
  •   是比較偏游戲
  •   基礎(chǔ)知識打下基礎(chǔ)
  •   書如其名,只是基礎(chǔ),適合初學(xué)者的一本書
  •   這本書還行,基礎(chǔ)介紹
  •   對專業(yè)知識的提高,和進(jìn)一步學(xué)習(xí)非常有幫助。
  •   現(xiàn)在正在學(xué)習(xí)這方面的技術(shù),看了一下,書的內(nèi)容很詳細(xì),描述也相當(dāng)清晰!
  •   內(nèi)容相對比較淺顯易懂,最主要是看看里面的例子,動手寫寫
  •   看了一半,語言顯淺易懂,適合入門。建議初學(xué)者閱讀
  •   還正在讀,前面還可以,后面未讀
  •   剛買未讀
  •   這種書是我第一次接觸,要好好的讀讀了,雖然沒仔細(xì)看,但書的質(zhì)量還是不錯,很滿意……
  •   最近做這方面的研究,我想它會幫助我的。
  •   非常不錯的一本書,非常值得推薦
  •   不錯,要是有光盤就更好了。
  •   速度很快,第二天就到了.內(nèi)容暫時還沒有仔細(xì)研究
  •   很有用,圖靈的書一向都很好
  •   不錯,雖然很薄,內(nèi)容不錯,語言通俗易懂
  •   好難,搞半天搞不懂,到貨很快,謝謝!
  •   這是一本非常適合了解 Html 動畫技術(shù)的入門書籍 淺顯易懂
  •   用這本書,還有《HTML5揭秘》,結(jié)合網(wǎng)上的資料,試編了一個HTML5醫(yī)學(xué)圖像瀏覽器。尤其圖像仿射變換那一部分,從這本書上學(xué)到不少。
  •   還不錯,滿足初步了解HTML5的需求
  •   感覺到這本書比較偏重于canvas游戲方面的編程,很少涉及到canvas在不同瀏覽器上會出現(xiàn)的不兼容問題
  •   今天剛收到,作為HTML5代言人的經(jīng)典之作,堅(jiān)信能從中學(xué)到很多。。。。。
  •   主要講的是Canvas的api及少量代碼示例,講的不錯比較詳細(xì)。不過內(nèi)容比較單薄,圖量較大。
  •   比較基礎(chǔ),對初入者很不錯
  •   還可以的書,基本知識書
  •   紙張和內(nèi)容都很不錯,不過只講了2d的,3d的只是提到了幾句話。
  •   書是比較薄的,但是包含的內(nèi)容很多,但是都不是十全十美的??傮w感覺不錯,如果是想深究的話,那么還是買別的書籍吧。
  •   學(xué)多少才重要
  •   質(zhì)量還不錯,內(nèi)容不多,應(yīng)該都是精華吧
  •   自己選的還是很喜歡的
  •   學(xué)這個,還是得從原生js開始
  •   看過英文版,買一本收藏
  •   書挺好的 書面挺美的,內(nèi)容也不錯
  •   短小精悍,HTML5入門書籍
  •   適合入門,內(nèi)容不深,我想看點(diǎn)更多3D方面的內(nèi)容,可惜沒有啊
  •   雖說知識是無價的,但也要對得起觀眾嘛,這種書有關(guān)顏色,應(yīng)該印彩色的.不然都是一些黑白的圖上,大截那么大.只看了前面八九頁,暫作此評價
  •   初學(xué)者,感覺寫的好
  •   剛看兩三天,書就開裂了,質(zhì)量不太好
  •   書不錯,很值得買,我很喜歡
  •   RT,書本身沒問題,我嚴(yán)重鄙視的是書的包裝竟然是跟其他東西一起就那樣裝在一個紙箱里面,沒有其他包裝,人家某當(dāng)網(wǎng)至少有個袋子吧,重要的是箱子被雨淋濕了,書現(xiàn)在都是皺皺的,以后怎樣都不回在亞馬遜買書的了
  •   文章太水了,介紹的知識太淺顯,網(wǎng)上不都有嗎,翻譯的太奇葩了,不忍直視啊
  •   4月15日下單,4月19日才送到,打開包裝一看,書本上面蓋了一層土?xí)膬?nèi)容還可以
  •   送貨蠻快,新手買來學(xué)學(xué)用的,還不錯。
  •   據(jù)說圖靈出品,必是精品。幫盆友買的,據(jù)說很好。講的是比較高端的東西,我是初級,有點(diǎn)看不懂。canvas現(xiàn)在的應(yīng)用很廣泛,不過存在著很多瀏覽器兼容性的問題,所以,應(yīng)用還是比較有限的。html5越來越朝著代碼、數(shù)學(xué)、后端的方向發(fā)展了。這是我個人的感覺
  •   商品包裝得很完整,書也很好
  •   很好的啊,內(nèi)容還沒有細(xì)看,質(zhì)量挺好的
  •   一般的書,講的不吸引人
  •   個人還是很推薦這本書的!
  •   太簡單了,比較垃圾.浪費(fèi)時間
  •   講的比較的xi 而且是用juqery來操作canvas 不錯
  •   大概瞟了一眼,都是基本的介紹,一般般
  •   喜歡動畫的不要錯過
  •   TML5 Canvas基礎(chǔ)教程
  •   html對圖像處理 ,功能好像挺強(qiáng)大的
  •   不錯,剛開始學(xué),看看
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7