HTML5之5 __Canvas: 渐变
渐变 Gradient 是一种绘图方式,它应用于颜色上,
使用渐变需要三个步骤:
1. 创建渐变对象
2. 为渐变对象设置颜色,即使用 addColorStop()函数, 指明过渡方式, addColorStop 函数允许 指定两个参数: 颜色和偏移量, 颜色参数是 指开发人员希望在偏移位置描边或填充时所使用的颜色。 偏移量是一个0.0 到 1.0 之间的数值, 代表沿着渐变线渐变的距离有多远.
3. 在context 上为填充样式或者描边样式 设置渐变。
可以将渐变 看作是颜色沿着一条线进行缓慢地变化.
请看代码
<!DOCTYPE html> <html> <meta charset="UTF-8"> <title>渐变</title> <canvas id="trails" style="border: 1px solid;" width="400" height="400"> </canvas> <script> var gravel = new Image(); gravel.src = "gravel.jpg"; gravel.onload = function () { drawTrails(); } function createCanopyPath(context) { context.beginPath(); context.moveTo(-25, -50); context.lineTo(-10, -80); context.lineTo(-20, -80); context.lineTo(-5, -110); context.lineTo(-15, -110); context.lineTo(0, -140); context.lineTo(15, -110); context.lineTo(5, -110); context.lineTo(20, -80); context.lineTo(10, -80); context.lineTo(25, -50); context.closePath(); } function drawTrails() { var canvas = document.getElementById('trails'); var context = canvas.getContext('2d'); context.save(); context.translate(130, 250); // 创建用作树干纹理的三阶水平渐变 var trunkGradient = context.createLinearGradient(-5, -50, 5, -50); // The beginning of the trunk is medium brown trunkGradient.addColorStop(0, '#663300'); // 树干中间偏左的位置颜色要淡一些 trunkGradient.addColorStop(0.4, '#996600'); // 树干右侧边缘的颜色要深一些 trunkGradient.addColorStop(1, '#552200'); // 使用渐变色填充树干 context.fillStyle = trunkGradient; context.fillRect(-8, -50,15, 100); //然后,创建垂直渐变,以用作树冠在树干上投影 var canopyShadow = context.createLinearGradient(0, -50, 0, 0); // 投影渐变的起点是透明度设为50%的黑色 canopyShadow.addColorStop(0, 'rgba(0, 0, 0, 0.5)'); // 方向垂直向下, 渐变色在很短的距离内迅速渐变至完全透明, 这段长度之外的树干上没有投影 canopyShadow.addColorStop(0.2, 'rgba(0, 0, 0, 0.0)'); // 在树干上填充投影渐变 context.fillStyle = canopyShadow; context.fillRect(-5, -50, 10, 50); createCanopyPath(context); context.lineWidth = 4; context.lineJoin = 'round'; context.strokeStyle = '#663300'; context.stroke(); context.fillStyle = '#339900'; context.fill(); context.restore(); } </script> </html>
除了上述的线性渐变以外, canvas 还支持 放射性渐变,即颜色会介于两个指定圆间的锥形区域平滑变化。
方法为 createRaddialGraddient(x0,y0, r0, x1, y1, r1); 共有 6个参数,前3个参数代表以(x0, y0) 为圆心,r0 为半径的圆, 后3个参数 代表以(x1, y1) 为圆心,r1为半径的另一个圆,渐变会在两个圆中间的区域出现.
附件,图片 gravel.jpg
以上就是HTML5之5 __Canvas: 渐变的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Panduan untuk Sempadan Jadual dalam HTML. Di sini kita membincangkan pelbagai cara untuk menentukan sempadan jadual dengan contoh Sempadan Jadual dalam HTML.

Panduan untuk HTML margin-kiri. Di sini kita membincangkan gambaran keseluruhan ringkas tentang HTML margin-left dan Contoh-contohnya bersama-sama dengan Pelaksanaan Kodnya.

Ini ialah panduan untuk Nested Table dalam HTML. Di sini kita membincangkan cara membuat jadual dalam jadual bersama-sama dengan contoh masing-masing.

Panduan untuk Susun Atur Jadual HTML. Di sini kita membincangkan Nilai Susun Atur Jadual HTML bersama-sama dengan contoh dan output n perincian.

Panduan untuk Pemegang Tempat Input HTML. Di sini kita membincangkan Contoh Pemegang Tempat Input HTML bersama-sama dengan kod dan output.

Panduan kepada Senarai Tertib HTML. Di sini kami juga membincangkan pengenalan senarai dan jenis Tertib HTML bersama-sama dengan contoh mereka masing-masing

Panduan untuk Memindahkan Teks dalam HTML. Di sini kita membincangkan pengenalan, cara teg marquee berfungsi dengan sintaks dan contoh untuk dilaksanakan.

Panduan untuk Butang onclick HTML. Di sini kita membincangkan pengenalan, kerja, contoh dan onclick Event masing-masing dalam pelbagai acara.
