+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c01.html b/c01.html
new file mode 100644
index 0000000..c11136d
--- /dev/null
+++ b/c01.html
@@ -0,0 +1,101 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c02.html b/c02.html
new file mode 100644
index 0000000..f71c6da
--- /dev/null
+++ b/c02.html
@@ -0,0 +1,106 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c03.html b/c03.html
new file mode 100644
index 0000000..6667bac
--- /dev/null
+++ b/c03.html
@@ -0,0 +1,117 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c04.html b/c04.html
new file mode 100644
index 0000000..708fefc
--- /dev/null
+++ b/c04.html
@@ -0,0 +1,97 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c05.html b/c05.html
new file mode 100644
index 0000000..37dfcdc
--- /dev/null
+++ b/c05.html
@@ -0,0 +1,139 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c06.html b/c06.html
new file mode 100644
index 0000000..537a8b1
--- /dev/null
+++ b/c06.html
@@ -0,0 +1,104 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c07.html b/c07.html
new file mode 100644
index 0000000..d93fefd
--- /dev/null
+++ b/c07.html
@@ -0,0 +1,143 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c08.html b/c08.html
new file mode 100644
index 0000000..ce7bd33
--- /dev/null
+++ b/c08.html
@@ -0,0 +1,175 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c09.html b/c09.html
new file mode 100644
index 0000000..df505b7
--- /dev/null
+++ b/c09.html
@@ -0,0 +1,241 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/c10.html b/c10.html
new file mode 100644
index 0000000..b913cb6
--- /dev/null
+++ b/c10.html
@@ -0,0 +1,276 @@
+
+
+
+ Example
+
+
+
+
+
+
+
+
+
diff --git a/canvas/LICENSE.txt b/canvas/LICENSE.txt
new file mode 100644
index 0000000..5c8a504
--- /dev/null
+++ b/canvas/LICENSE.txt
@@ -0,0 +1,30 @@
+Copyright (C) 2012 David Geary.
+
+This code is from the book Core HTML5 Canvas, published by Prentice-Hall in 2012.
+
+License:
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation files
+(the "Software"), to deal in the Software without restriction,
+including without limitation the rights to use, copy, modify, merge,
+publish, distribute, sublicense, and/or sell copies of the Software,
+and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+The Software may not be used to create training material of any sort,
+including courses, books, instructional videos, presentations, etc.
+without the express written consent of David Geary.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
diff --git a/canvas/README.txt b/canvas/README.txt
new file mode 100644
index 0000000..82cb38d
--- /dev/null
+++ b/canvas/README.txt
@@ -0,0 +1,107 @@
+This is the source code from the book Core HTML5 Canvas, published by
+Prentice-Hall in May 2012. See LICENSE.txt for the minimal restrictions on its
+use. (Yes, you can use any of the code in commercial products as long as you're
+not using it for education material such as books, videos, presentations, etc.)
+
+YOU MUST CONFIGURE YOUR BROWSER TO RUN SOME EXAMPLES LOCALLY:
+
+ The following examples perform image manipulation and will therefore result
+ in security exceptions when you run them on your local filesystem. See the
+ Security section of the Images chapter in Core HTML5 Canvas for information
+ on bypassing the browser's security so you can run those examples:
+
+ example-4.9
+ example-4.13
+ example-4.14
+ example-4.15
+ example-4.16
+ example-4.18
+ example-4.20
+
+
+Overview........................................................................
+
+You can access all of the examples by loading index.html in an HTML5-capable
+browser.
+
+The examples are grouped by chapter, and mostly by example number. For instance,
+here are the directories that you'll find in the ch08 directory:
+
+ example-8.1
+ example-8.10
+ example-8.19
+ example-8.2
+ example-8.20
+ example-8.8
+
+ section-8.1.1
+ section-8.3
+ section-8.4.1.6
+
+The example numbers correspond to listings in the book. Many listings in the
+book are partial listings, so example numbers will often jump around, which
+is the case for chapter 8 above, which has several partial listings between
+example-8.2 and example-8.8.
+
+Some examples do not have listings. I discuss the examples in the book, and
+perhaps show a little of their code, but not enough for a full listing, so
+you can find those listings by their sections instead, as is the case for
+the last three examples in chapter 8 listed above.
+
+Some examples that you have downloaded are slightly different from the
+listings in the book; for example, I have put all images shared among examples
+in shared/images, and I've modified the examples to use those images to save
+space in the zip file. I've also added the security fix for Firefox discussed in
+section 4.8 to several of the examples so the examples run without intervention.
+
+
+Browser Anomolies...............................................................
+
+The latest browser versions that I've tested this code with:
+
+ Firefox 12.0
+ Chrome 20.0
+ Safari 5.0.5
+ Opera 11.6.2
+ IE9/10
+
+Known Bugs:
+
+1. Opera and IE9/10 do not implement arcTo() correctly (see bit.ly/HVvnT8), which
+ affects the following examples:
+
+ example-2.20
+ example-4.22
+ section-6.3.2
+ example-7.1
+ section-8.1.1
+ example-10.4 (Opera, in addition to incorrectly drawing the arcs, is incredibly slow here)
+ example-10.7
+
+2. Opera does not fill text correctly, affecting the following examples: example-3.1, example-3.5.
+3. Firefox does not fill text with a gradient correctly in example-3.2.
+4. Paragraphs do not indent correctly in Firefox and Opera in example-3.18.
+5. Opera does not redraw the image as you drag the slider in example-4.6.
+6. Firefox and Opera draw watermark text with the wrong colors in example-4.8.
+7. Firefox and Chrome draw the bomb at the wrong scale.
+
+
+Performance.....................................................................
+
+HTML5 Canvas performance varies significantly between devices and operating
+systems, but in general it's very good. When the book was released, performance
+was still pitiful on Android, but pretty kickass on iOS5. See http://bit.ly/HsyFOG
+on an iPad for some examples.
+
+When you run some of the more intense examples in the book, especially games
+such as the bucket game and pinball, those examples will run slowly if you have
+a million tabs and browser windows open, which is always the case for me.
+So when you run those examples, close your other windows and tabs.
+
+
+Thank You.......................................................................
+
+Thank you for downloading the code. I hope you find it, and the book, useful.
+
+
+David Geary
diff --git a/canvas/ch01/example-1.1/example.html b/canvas/ch01/example-1.1/example.html
new file mode 100644
index 0000000..ca77c8d
--- /dev/null
+++ b/canvas/ch01/example-1.1/example.html
@@ -0,0 +1,58 @@
+
+
+
+
+
+ Canvas element size: 600 x 300, Canvas drawing surface size: 600 x 300
+
+
+
+
+
+
+
+
+
+
diff --git a/canvas/ch01/example-1.1/example.js b/canvas/ch01/example-1.1/example.js
new file mode 100644
index 0000000..3dffe5e
--- /dev/null
+++ b/canvas/ch01/example-1.1/example.js
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2012 David Geary. This code is from the book
+ * Core HTML5 Canvas, published by Prentice-Hall in 2012.
+ *
+ * License:
+ *
+ * Permission is hereby granted, free of charge, to any person
+ * obtaining a copy of this software and associated documentation files
+ * (the "Software"), to deal in the Software without restriction,
+ * including without limitation the rights to use, copy, modify, merge,
+ * publish, distribute, sublicense, and/or sell copies of the Software,
+ * and to permit persons to whom the Software is furnished to do so,
+ * subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * The Software may not be used to create training material of any sort,
+ * including courses, books, instructional videos, presentations, etc.
+ * without the express written consent of David Geary.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+var canvas = document.getElementById('canvas'),
+ context = canvas.getContext('2d');
+
+context.font = '38pt Arial';
+context.fillStyle = 'cornflowerblue';
+context.strokeStyle = 'blue';
+
+context.fillText("Hello Canvas", canvas.width/2 - 150,
+ canvas.height/2 + 15);
+
+context.strokeText("Hello Canvas", canvas.width/2 - 150,
+ canvas.height/2 + 15 );
diff --git a/canvas/ch01/example-1.11/example.html b/canvas/ch01/example-1.11/example.html
new file mode 100644
index 0000000..a65f8eb
--- /dev/null
+++ b/canvas/ch01/example-1.11/example.html
@@ -0,0 +1,72 @@
+
+
+
+
+ Clock
+
+
+
+
+
+