博客网
HTML5画布
画布元素
线
线
线条宽度
线条颜色
线帽
曲线
弧
二次曲线
贝塞尔曲线
路径
路径
线条连接
圆角
形状
自定义形状
长方形
圆圈
半圆
椭圆形
填充样式
颜色填充
线性渐变
径向渐变
图案
图像
绘制图像
图像大小
图像裁剪
图像加载器
文本
字体、大小和样式
文本颜色
文本笔划
文本对齐
文本基线
文本度量
文本换行符
转换
转换
比例
旋转
自定义变换
剪切
镜子
重置变换
状态堆栈
复合材料
阴影
全局Alpha
剪裁区域
操作
图像数据和URL
图像数据
反色
灰度
获取数据URL
加载数据URL
保存绘图
动画
清除画布
动画帧
线性运动
加快
振荡
启动和停止
鼠标检测
鼠标坐标
文本换行符
代码
运行
<!DOCTYPE HTML> <html> <head> <title>文本转换符</title> <style> body { margin: 0px; padding: 0px; } </style> </head> <body> <canvas id="myCanvas" width="578" height="200"></canvas> <script> function wrapText(context, text, x, y, maxWidth, lineHeight) { var words = text.split(' '); var line = ''; for(var n = 0; n < words.length; n ) { var testLine = line words[n] ' '; var metrics = context.measureText(testLine); var testWidth = metrics.width; if (testWidth > maxWidth && n > 0) { context.fillText(line, x, y); line = words[n] ' '; y = lineHeight; } else { line = testLine; } } context.fillText(line, x, y); } var canvas = document.getElementById('myCanvas'); var context = canvas.getContext('2d'); var maxWidth = 400; var lineHeight = 25; var x = (canvas.width - maxWidth) / 2; var y = 60; var text = 'All the world \'s a stage, and all the men and women merely players. They have their exits and their entrances; And one man in his time plays many parts.'; context.font = '16pt Calibri'; context.fillStyle = '#333'; wrapText(context, text, x, y, maxWidth, lineHeight); </script> </body> </html>