- 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 工作线程
- HTML5 - IndexedDB
- HTML5 - Web 消息传递
- HTML5 - Web CORS
- HTML5 - Web RTC
- HTML5 演示
- HTML5 - Web 存储
- HTML5 - 服务器发送事件
- HTML5 - Canvas
- HTML5 - 音频播放器
- HTML5 - 视频播放器
- HTML5 - 地理位置
- HTML5 - 拖放
- HTML5 - Web 工作线程
- HTML5 - Web幻灯片
- HTML5 工具
- HTML5 - SVG 生成器
- HTML5 - MathML
- HTML5 - Velocity 绘图
- HTML5 - 二维码
- HTML5 - Validator.nu 验证
- HTML5 - Modernizr
- HTML5 - 验证
- HTML5 - 在线编辑器
- HTML5 - 颜色代码生成器
- HTML5 标签参考
- HTML5 - 问答
- HTML5 - 标签参考
- HTML5 - 已弃用标签
- HTML5 - 新标签
- HTML5 资源
- HTML5 - 有用资源
- HTML5 - 讨论
HTML5 Canvas - 模式和阴影
创建模式
在画布上创建模式需要以下方法:
序号 | 方法和描述 |
---|---|
1 | createPattern(image, repetition) 此方法将使用图像来创建模式。第二个参数可以是包含以下值之一的字符串:repeat、repeat-x、repeaty 和 no-repeat。如果指定空字符串或 null,则将假定为 repeat |
示例
以下是一个简单的示例,它使用上面提到的方法来创建一个漂亮的模式。
<!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 new image object to use as pattern var img = new Image(); img.src = 'images/pattern.jpg'; img.onload = function() { // create pattern var ptrn = ctx.createPattern(img,'repeat'); ctx.fillStyle = ptrn; ctx.fillRect(0,0,150,150); } } 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>
假设我们有以下模式 images/pattern.jpg。
以上示例将绘制以下结果:
创建阴影
HTML5 canvas 提供了在图形周围创建漂亮阴影的功能。所有绘图操作都受四个全局阴影属性的影响。
序号 | 属性和描述 |
---|---|
1 | shadowColor [ = value ] 此属性返回当前阴影颜色,并且可以设置,以更改阴影颜色。 |
2 | shadowOffsetX [ = value ] 此属性返回当前阴影偏移 X,并且可以设置,以更改阴影偏移 X。 |
3 | shadowOffsetY [ = value ] 此属性返回当前阴影偏移 Y,并且可以设置,以更改阴影偏移 Y。 |
4 | shadowBlur [ = value ] 此属性返回应用于阴影的当前模糊级别,并且可以设置,以更改模糊级别。 |
示例
以下是一个简单的示例,它使用上面提到的属性来绘制阴影。
<!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'); ctx.shadowOffsetX = 2; ctx.shadowOffsetY = 2; ctx.shadowBlur = 2; ctx.shadowColor = "rgba(0, 0, 0, 0.5)"; ctx.font = "20px Times New Roman"; ctx.fillStyle = "Black"; ctx.fillText("This is shadow test", 5, 30); } 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
广告