Penjelasan tentang konsep asas HTML5 Canvas
html5, ini tidak sepatutnya memerlukan sebarang pengenalan, kerana mana-mana pembangun mesti biasa dengannya. HTML5 ialah standard teknologi web "muncul" Pada masa ini, kecuali untuk IE8 dan ke bawah, hampir semua penyemak imbas arus perdana (FireFox, Chrome, Opera, Safari, IE9) telah mula menyokong HTML5. Di samping itu, dalam pasaran penyemak imbas mudah alih, banyak penyemak imbas mudah alih juga telah melancarkan perlumbaan senjata mengenai "keupayaan dan prestasi sokongan HTML5." Sebagai piawaian teknologi web yang revolusioner, html, ditambah dengan sokongan padu daripada banyak pengeluar atau organisasi penyemak imbas, boleh dibayangkan bahawa html5 akan menjadi peneraju teknologi web pada masa hadapan.
html5, yang dikatakan "muncul", sebenarnya bukanlah sesuatu yang baharu. Lagipun, draf rasmi pertama html5 telah diumumkan seawal tahun 2008. Mengira dari tahun 2008, sudah agak lama sekarang. Walau bagaimanapun, setakat ini, bagi kebanyakan pembangun, ia masih "gemuruh besar tetapi sedikit hujan" - terdapat ramai orang yang mendengar tentang HTML5, tetapi sangat sedikit yang benar-benar menggunakan HTML5.
Seperti yang kita sedia maklum, banyak ciri baharu telah ditambahkan pada html5. Di antara banyak ciri html5, Kanvas harus dianggap sebagai salah satu ciri baharu yang paling menarik perhatian. Kami menggunakan objek Kanvas html5 untuk melukis grafik terus pada halaman web penyemak imbas. Ini bermakna penyemak imbas boleh memaparkan grafik atau animasi terus pada halaman web tanpa pemalam pihak ketiga seperti Flash.
Sekarang, mari kita perkenalkan kepada pemula html5 cara menggunakan Kanvas html5 untuk melukis grafik asas.
Pertama, kita perlu menyediakan kod html asas berikut:
Kod di atas ialah templat kod asas untuk halaman html5. Antaranya, baris pertama kod ialah arahan teg jenis dokumen, yang juga merupakan arahan jenis dokumen standard untuk halaman html5 Ia digunakan untuk memberitahu pelayar "Ini adalah halaman html5. Sila huraikan dan paparkannya mengikut piawaian halaman web html5." halaman ini". Baris keempat kod digunakan untuk memberitahu penyemak imbas "pengekodan aksara halaman html5 ini ialah UTF-8 Ini juga merupakan cara standard untuk menulis pengekodan aksara untuk html5 laman web. Ini berbeza daripada arahan pengekodan aksara HTML sebelumnya.
Sekarang, kami akan menerangkan contoh grafik lukisan Kanvas dalam fail html yang mengandungi kod di atas. Mula-mula, kami menambah teg kanvas berikut pada bahagian badan kod html di atas.
Pada masa ini, jika kami menggunakan penyemak imbas yang menyokong HTML5 untuk membuka halaman, kami akan melihat kandungan berikut:
Dalam HTML5, teg kanvas itu sendiri tidak mempunyai sebarang tingkah laku, ia hanya menempati saiz ruang kosong yang ditentukan pada halaman. Teg kanvas adalah bersamaan dengan kanvas kosong Kami juga perlu menggunakan API kanvas yang disediakan oleh JavaScript untuk menulis kod yang sepadan untuk melukis grafik yang kami inginkan pada kanvas ini.
Nota: Kandungan teks dalam teg kanvas akan dipaparkan dalam penyemak imbas yang tidak menyokong HTML5. Seperti yang ditunjukkan dalam kod HTML di atas, jika penyemak imbas anda tidak menyokong teg kanvas HTML5, teks "Pelayar anda tidak menyokong teg kanvas" akan dipaparkan pada teg kanvas.
Sebagai "pelukis", pertama sekali kita perlu membiasakan diri dengan berus di tangan kita, iaitu objek Canvas dalam JavaScript dan kandungan yang berkaitan dengannya.
Dalam HTML5, teg kanvas sepadan dengan objek Kanvas Kita boleh menggunakan fungsi biasa seperti document.getElementById() dalam JavaScript untuk mendapatkan objek. Perlu diingat bahawa dalam JavaScript, kami tidak mengendalikan objek Canvas secara langsung, tetapi mendapatkan objek konteks lukisan grafik yang sepadan CanvasRenderingContext2D melalui objek Canvas, dan kemudian kami menggunakan banyak fungsi lukisan grafik yang disertakan dengan objek CanvasRenderingContext2D untuk dilukis.
Ia seperti setiap kanvas sepadan dengan berus Jika kita ingin melukis di atas kanvas, kita mesti mendapatkan berus yang sepadan dahulu, dan kemudian menggunakan berus ini untuk melukis di atas kanvas. Objek CanvasRenderingContext2D adalah setara dengan berus ini. Sekarang, mari cuba dapatkan berus ini dalam JavaScript.
Seperti yang ditunjukkan dalam kod di atas, kita boleh menggunakan kaedah getContext() bagi objek Canvas untuk mendapatkan objek CanvasRenderingContext2D. Pembaca yang lebih prihatin sepatutnya menyedari: kaedah getContext() perlu dihantar dalam rentetan - 2d, dan nama objek CanvasRenderingContext2D yang diperoleh juga mengandungi 2D. Ini kerana pada masa ini html5 hanya menyokong lukisan 2D, tetapi 3D atau bentuk lukisan lain juga mungkin disokong dalam html5 akan datang. Pada masa itu, kita mungkin perlu menggunakan getContext("3d") untuk mendapatkan objek CanvasRenderingContext3D dan melukis grafik 3D.
Gunakan kanvas html5 untuk melukis garisan (garisan lurus, garis poli, dll.)
Sifat dan kaedah utama objek CanvasRenderingContext2D yang diperlukan untuk melukis garis lurus menggunakan html5 Canvas (yang mempunyai "() " adalah kaedah) adalah seperti berikut:
属性或方法 | 基本描述 |
---|---|
strokeStyle | 用于设置画笔绘制路径的颜色、渐变和模式。该属性的值可以是一个表示css颜色值的字符串。如果你的绘制需求比较复杂,该属性的值还可以是一个CanvasGradient对象或者CanvasPattern对象 |
globalAlpha | 定义绘制内容的透明度,取值在0.0(完全透明)和1.0(完全不透明)之间,默认值为1.0。 |
lineWidth | 定义绘制线条的宽度。默认值是1.0,并且这个属性必须大于0.0。较宽的线条在路径上居中,每边各有线条宽的一半。 |
lineCap | 指定线条两端的线帽如何绘制。合法的值是 "butt"、"round"和"square"。默认值是"butt"。 |
beginPath() | 开始一个新的绘制路径。每次绘制新的路径之前记得调用该方法。它将重置内存中现有的路径。 |
moveTo(int x, int y) | 移动画笔到指定的坐标点(x,y) ,该点就是新的子路径的起始点 |
lineTo(int x, int y) | 使用直线连接当前端点和指定的坐标点(x,y)
|
stroke(int x, int y) | 沿着绘制路径的坐标点顺序绘制直线 |
closePath() | 如果当前的绘制路径是打开的,则关闭掉该绘制路径。此外,调用该方法时,它会尝试用直线连接当前端点与起始端点来关闭路径,但如果图形已经关闭(比如先调用了stroke())或者只有一个点,它会什么都不做。 |
Gunakan kanvas untuk melukis garis lurus asas
Kini, kami menggunakan kanvas untuk melukis garis lurus yang paling asas.