- HTML5 教程
- HTML5 - 首页
- HTML5 - 概述
- HTML5 - 语法
- HTML5 - 属性
- HTML5 - 事件
- HTML5 - Web 表单 2.0
- HTML5 - SVG
- HTML5 - MathML
- HTML5 - Web 存储
- HTML5 - Web SQL 数据库
- HTML5 - 服务器发送事件
- HTML5 - WebSocket
- HTML5 - Canvas
- HTML5 - 音频和视频
- HTML5 - 地理位置
- HTML5 - 微数据
- HTML5 - 拖放
- HTML5 - Web Workers
- HTML5 - IndexedDB
- HTML5 - Web 消息传递
- HTML5 - Web CORS
- HTML5 - Web RTC
- HTML5 演示
- HTML5 - Web 存储
- HTML5 - 服务器发送事件
- HTML5 - Canvas
- HTML5 - 音频播放器
- HTML5 - 视频播放器
- HTML5 - 地理位置
- HTML5 - 拖放
- HTML5 - Web Worker
- HTML5 - Web幻灯片
- HTML5 工具
- HTML5 - SVG 生成器
- HTML5 - MathML
- HTML5 - Velocity Draw
- HTML5 - QR 码
- HTML5 - Validator.nu 验证
- HTML5 - Modernizr
- HTML5 - 验证
- HTML5 - 在线编辑器
- HTML5 - 颜色代码生成器
- HTML5 标签参考
- HTML5 - 问答
- HTML5 - 标签参考
- HTML5 - 已弃用标签
- HTML5 - 新标签
- HTML5 资源
- HTML5 - 有用资源
- HTML5 - 讨论
HTML5 Canvas - 样式和颜色
HTML5 canvas 提供以下两个重要的属性来将颜色应用于形状:
序号 | 方法和描述 |
---|---|
1 | fillStyle 此属性表示用于形状内部的颜色或样式。 |
2 | strokeStyle 此属性表示用于形状周围线条的颜色或样式。 |
默认情况下,笔触和填充颜色设置为黑色,即 CSS 颜色值 #000000。
fillStyle 示例
以下是一个简单的示例,它使用上面提到的 fillStyle 属性来创建一个不错的图案。
<!DOCTYPE HTML> <html> <head> <style> #test { width: 100px; height:100px; margin: 0px auto; } </style> <script type = "text/javascript"> function drawShape() { // get the canvas element using the DOM var canvas = document.getElementById('mycanvas'); // Make sure we don't execute when canvas isn't supported if (canvas.getContext) { // use getContext to use the canvas for drawing var ctx = canvas.getContext('2d'); // Create a pattern for (var i = 0;i<7;i++) { for (var j = 0;j<7;j++) { ctx.fillStyle = 'rgb(' + Math.floor(255-20.5*i)+ ','+ Math.floor(255 - 42.5*j) + ',255)'; ctx.fillRect( j*25, i* 25, 55, 55 ); } } } else { alert('You need Safari or Firefox 1.5+ to see this demo.'); } } </script> </head> <body id = "test" onload = "drawShape();"> <canvas id = "mycanvas"></canvas> </body> </html>
以上示例将产生以下结果:
strokeStyle 示例
以下是一个简单的示例,它使用上面提到的 fillStyle 属性来创建另一个不错的图案。
<!DOCTYPE HTML> <html> <head> <style> #test { width: 100px; height:100px; margin: 0px auto; } </style> <script type = "text/javascript"> function drawShape() { // get the canvas element using the DOM var canvas = document.getElementById('mycanvas'); // Make sure we don't execute when canvas isn't supported if (canvas.getContext) { // use getContext to use the canvas for drawing var ctx = canvas.getContext('2d'); // Create a pattern for (var i = 0;i<10;i++) { for (var j = 0;j<10;j++) { ctx.strokeStyle = 'rgb(255,'+ Math.floor(50-2.5*i)+','+ Math.floor(155 - 22.5 * j ) + ')'; ctx.beginPath(); ctx.arc(1.5+j*25, 1.5 + i*25,10,10,Math.PI*5.5, true); ctx.stroke(); } } } else { alert('You need Safari or Firefox 1.5+ to see this demo.'); } } </script> </head> <body id = "test" onload = "drawShape();"> <canvas id = "mycanvas"></canvas> </body> </html>
以上示例将产生以下结果:
html5_canvas.htm
广告