HTML5 Canvas核心技術(shù)圖形動(dòng)畫與游戲開(kāi)發(fā)(以下簡(jiǎn)稱html5 canvas核心技術(shù)),該書主要內(nèi)容為Canvas動(dòng)畫制作方面的基礎(chǔ)知識(shí),這本書對(duì)于開(kāi)發(fā)游戲的基礎(chǔ)講解的含金量很足,另外,該書對(duì)html5的基礎(chǔ)介紹,特別是對(duì)動(dòng)畫效果制作,精靈,物理效果,碰撞檢測(cè)這幾章介紹的特別好,本節(jié)內(nèi)容東坡小編為大家整理帶來(lái)的是一份pdf格式完整中文版html5 canvas核心技術(shù)電子書,需要下載查閱的朋友點(diǎn)擊本文相應(yīng)的下載地址進(jìn)行下載即可!
HTML5 Canvas核心技術(shù)圖形動(dòng)畫與游戲開(kāi)發(fā)內(nèi)容簡(jiǎn)介
該書共分為11章。第1章介紹了canvas元素及如何在網(wǎng)絡(luò)應(yīng)用程序中使用它;第2章深入研究了如何使用Canvas的API進(jìn)行繪制;第3章告訴讀者如何繪制并操作Canvas中的文本;第4章專門講解圖像、圖像的操作及視頻處理;第5章介紹如何實(shí)現(xiàn)平滑的動(dòng)畫效果;第6章講解如何用JavaScript語(yǔ)言來(lái)實(shí)現(xiàn)精靈;第7章展示了如何在動(dòng)畫中模擬物理效果;第8章介紹了進(jìn)行碰撞檢測(cè)所用的技術(shù);第9章以一個(gè)簡(jiǎn)單但是高效的游戲引擎開(kāi)始,提供了游戲制作所需的全部支持功能;第10章討論了實(shí)現(xiàn)自定義控件的通用方法;第11章專門講述如何實(shí)現(xiàn)基于Canvas的手機(jī)應(yīng)用程序。
html5 canvas核心技術(shù)電子書目錄
譯者序
前言
第1章 基礎(chǔ)知識(shí) 1
1.1 canvas元素 1
1.1.1 canvas元素的大小與繪圖表面的大小 4
1.1.2 canvas元素的api 5
1.2 canvas的繪圖環(huán)境 6
1.2.1 2d繪圖環(huán)境 6
1.2.2 canvas狀態(tài)的保存與恢復(fù) 8
1.3 本書程序清單的規(guī)范格式 9
1.4 開(kāi)始學(xué)習(xí)html5 10
1.4.1 規(guī)范 10
1.4.2 瀏覽器 11
1.4.3 控制臺(tái)與調(diào)試器 11
1.4.4 性能 13
1.5 基本的繪制操作 15
1.6 事件處理 18
1.6.1 鼠標(biāo)事件 18
1.6.2 鍵盤事件 22
.1.6.3 觸摸事件 23
1.7 繪制表面的保存與恢復(fù) 23
1.8 在canvas中使用html元素 25
1.9 打印canvas的內(nèi)容 32
1.10 離屏canvas 35
1.11 基礎(chǔ)數(shù)學(xué)知識(shí)簡(jiǎn)介 37
1.11.1 求解代數(shù)方程 37
1.11.2 三角函數(shù) 38
1.11.3 向量運(yùn)算 39
1.11.4 根據(jù)計(jì)量單位來(lái)推導(dǎo)等式 42
1.12 總結(jié) 44
第2章 繪制 45
2.1 坐標(biāo)系統(tǒng) 46
2.2 canvas的繪制模型 47
2.3 矩形的繪制 48
2.4 顏色與透明度 50
2.5 漸變色與圖案 52
2.5.1 漸變色 52
2.5.2 圖案 54
2.6 陰影 57
2.7 路徑、描邊與填充 60
2.7.1 路徑與子路徑 63
2.7.2 剪紙效果 64
2.8 線段 69
2.8.1 線段與像素邊界 70
2.8.2 網(wǎng)格的繪制 71
2.8.3 坐標(biāo)軸的繪制 72
2.8.4 橡皮筋式的線條繪制 74
2.8.5 虛線的繪制 79
2.8.6 通過(guò)擴(kuò)展canvasrenderingcontext2d來(lái)繪制虛線 80
2.8.7 線段端點(diǎn)與連接點(diǎn)的繪制 81
2.9 圓弧與圓形的繪制 83
2.9.1 arc()方法的用法 83
2.9.2 以橡皮筋式輔助線來(lái)協(xié)助用戶畫圓 85
2.9.3 arcto()方法的用法 86
2.9.4 刻度儀表盤的繪制 88
2.10 貝塞爾曲線 93
2.10.1 二次方貝塞爾曲線 93
2.10.2 三次方貝塞爾曲線 95
2.11 多邊形的繪制 97
2.12 高級(jí)路徑操作 102
2.12.1 拖動(dòng)多邊形對(duì)象 102
2.12.2 編輯貝塞爾曲線 107
2.12.3 自動(dòng)滾動(dòng)網(wǎng)頁(yè),使某段路徑所對(duì)應(yīng)的元素顯示在視窗中 115
2.13 坐標(biāo)變換 116
2.13.1 坐標(biāo)系的平移、縮放與旋轉(zhuǎn) 116
2.13.2 自定義的坐標(biāo)變換 119
2.14 圖像合成 123
2.15 剪輯區(qū)域 128
2.15.1 通過(guò)剪輯區(qū)域來(lái)擦除圖像 128
2.15.2 利用剪輯區(qū)域來(lái)制作伸縮式動(dòng)畫 133
2.16 總結(jié) 135
第3章 文本 137
3.1 文本的描邊與填充 137
3.2 設(shè)置字型屬性 141
3.3 文本的定位 144
3.3.1 水平與垂直定位 144
3.3.2 將文本居中 146
3.3.3 文本的度量 147
3.3.4 繪制坐標(biāo)軸旁邊的文本標(biāo)簽 148
3.3.5 繪制數(shù)值儀表盤周圍的文本標(biāo)簽 151
3.3.6 在圓弧周圍繪制文本 152
3.4 實(shí)現(xiàn)文本編輯控件 154
3.4.1 指示文本輸入位置的光標(biāo) 154
3.4.2 在canvas中編輯文本 159
3.4.3 文本段的編輯 163
3.5 總結(jié) 174
第4章 圖像與視頻 175
4.1 圖像的繪制 176
4.1.1 在canvas之中繪制圖像 176
4.1.2 drawimage()方法的用法 177
4.2 圖像的縮放 179
4.3 將一個(gè)canvas繪制到另一個(gè)canvas之中 183
4.4 離屏canvas 186
4.5 操作圖像的像素 189
4.5.1 獲取圖像數(shù)據(jù) 189
4.5.2 修改圖像數(shù)據(jù) 195
4.6 結(jié)合剪輯區(qū)域來(lái)繪制圖像 208
4.7 以圖像制作動(dòng)畫 211
4.8 圖像繪制的安全問(wèn)題 216
4.9 性能 216
4.9.1 對(duì)比drawimage(htmlimage)、drawimage(htmlcanvas)與putimagedata()的繪圖效率 217
4.9.2 在canvas中繪制另一個(gè)canvas與繪制普通圖像之間的對(duì)比;在繪制時(shí)縮放圖像與保持原樣之間的對(duì)比 217
4.9.3 遍歷圖像數(shù)據(jù) 218
4.10 放大鏡 222
4.10.1 使用離屏canvas 224
4.10.2 接受用戶從文件系統(tǒng)中拖放進(jìn)來(lái)的圖像 225
4.11 視頻處理 227
4.11.1 視頻格式 227
4.11.2 在canvas中播放視頻 229
4.11.3 視頻處理 230
4.12 總結(jié) 234
第5章 動(dòng)畫 235
5.1 動(dòng)畫循環(huán) 235
5.1.1 通過(guò)requestanimationframe()方法讓瀏覽器來(lái)自行決定幀速率 237
5.1.2 internet explorer瀏覽器對(duì)requestanimationframe()功能的實(shí)現(xiàn) 241
5.1.3 可移植于各瀏覽器平臺(tái)的動(dòng)畫循環(huán)邏輯 241
5.2 幀速率的計(jì)算 248
5.3 以不同的幀速率來(lái)執(zhí)行各種任務(wù) 249
5.4 恢復(fù)動(dòng)畫背景 250
5.4.1 利用剪輯區(qū)域來(lái)處理動(dòng)畫背景 250
5.4.2 利用圖塊復(fù)制技術(shù)來(lái)處理動(dòng)畫背景 252
5.5 利用雙緩沖技術(shù)繪制動(dòng)畫 253
5.6 基于時(shí)間的運(yùn)動(dòng) 254
5.7 背景的滾動(dòng) 257
5.8 視差動(dòng)畫 261
5.9 用戶手勢(shì) 264
5.10 定時(shí)動(dòng)畫 266
5.10.1 秒表 266
5.10.2 動(dòng)畫計(jì)時(shí)器 269
5.11 動(dòng)畫制作的最佳指導(dǎo)原則 270
5.12 總結(jié) 271
第6章 精靈 272
6.1 精靈概述 273
6.2 精靈繪制器 275
6.2.1 描邊與填充繪制器 275
6.2.2 圖像繪制器 279
6.2.3 精靈表繪制器 281
6.3 精靈對(duì)象的行為 284
6.3.1 將多個(gè)行為組合起來(lái) 285
6.3.2 限時(shí)觸發(fā)的行為 287
6.4 精靈動(dòng)畫制作器 289
6.5 基于精靈的動(dòng)畫循環(huán) 293
6.6 總結(jié) 294
第7章 物理效果 295
7.1 重力 295
7.1.1 物體的下落 296
7.1.2 拋射體彈道運(yùn)動(dòng) 298
7.1.3 鐘擺運(yùn)動(dòng) 307
7.2 時(shí)間軸扭曲 311
7.3 時(shí)間軸扭曲函數(shù) 315
7.4 時(shí)間軸扭曲運(yùn)動(dòng) 317
7.4.1 沒(méi)有加速度的線性運(yùn)動(dòng) 319
7.4.2 逐漸加速的緩入運(yùn)動(dòng) 320
7.4.3 逐漸減速的緩出運(yùn)動(dòng) 322
7.4.4 緩入緩出運(yùn)動(dòng) 323
7.4.5 彈簧運(yùn)動(dòng)與彈跳運(yùn)動(dòng) 324
7.5 以扭曲后的幀速率播放動(dòng)畫 326
7.6 總結(jié) 332
第8章 碰撞檢測(cè) 333
8.1 外接圖形判別法 333
8.1.1 外接矩形判別法 333
8.1.2 外接圓判別法 334
8.2 碰到墻壁即被彈回的小球 336
8.3 光線投射法 337
8.4 分離軸定理(sat)與最小平移向量(mtv) 340
8.4.1 使用分割軸定理檢測(cè)碰撞 340
8.4.2 根據(jù)最小平移向量應(yīng)對(duì)碰撞 362
8.5 總結(jié) 373
第9章 游戲開(kāi)發(fā) 374
9.1 游戲引擎 374
9.1.1 游戲循環(huán) 376
9.1.2 加載圖像 382
9.1.3 同時(shí)播放多個(gè)聲音 384
9.1.4 鍵盤事件 385
9.1.5 高分榜 386
9.1.6 游戲引擎源代碼 387
9.2 游戲原型 395
9.2.1 游戲原型程序的html代碼 396
9.2.2 原型程序的游戲循環(huán) 399
9.2.3 游戲原型程序的加載畫面 400
9.2.4 暫停畫面 402
9.2.5 按鍵監(jiān)聽(tīng)器 404
9.2.6 游戲結(jié)束及高分榜 404
9.3 彈珠臺(tái)游戲 407
9.3.1 游戲循環(huán)彈珠 408
9.3.2 彈珠精靈 410
9.3.3 重力與摩擦力 411
9.3.4 彈板的移動(dòng) 412
9.3.5 處理鍵盤事件 413
9.3.6 碰撞檢測(cè) 416
9.4 總結(jié) 425
第10章 自定義控件 426
10.1 圓角矩形控件 427
10.2 進(jìn)度條控件 433
10.3 滑動(dòng)條控件 437
10.4 圖像查看器控件 446
10.5 總結(jié) 454
第11章 移動(dòng)平臺(tái)開(kāi)發(fā) 455
11.1 移動(dòng)設(shè)備的視窗 456
11.2 媒體特征查詢技術(shù) 461
11.2.1 媒體特征查詢與css 461
11.2.2 用javascript程序應(yīng)對(duì)媒體特征的變化 462
11.3 觸摸事件 464
11.3.1 touchevent對(duì)象 464
11.3.2 touchlist對(duì)象 465
11.3.3 touch對(duì)象 466
11.3.4 同時(shí)支持觸摸事件與鼠標(biāo)事件 466
11.3.5 手指縮放 468
11.4 ios5 469
11.4.1 應(yīng)用程序圖標(biāo)及啟動(dòng)畫面 469
11.4.2 利用媒體特征查詢技術(shù)設(shè)置ios5系統(tǒng)的應(yīng)用程序圖標(biāo)及啟動(dòng)畫面 470
11.4.3 以不帶瀏覽器飾件的全屏模式運(yùn)行應(yīng)用程序 471
11.4.4 應(yīng)用程序的狀態(tài)欄 471
11.5 虛擬鍵盤 472
11.6 總結(jié) 485