HTML5 画布 ctx.fillText 将不会换行
该 fillText() 方法在 画布 上绘制 填充文本。如果要换行,可以通过在换行符处拆分文本以及多次调用 filltext() 来实现。通过这样做,你正在将文本拆分成行,并分别绘制每一行。
你可以尝试运行以下代码段 −
var c = $('#c')[0].getContext('2d'); c.font = '12px Courier'; alert(c); var str = 'first line
second line...'; var a = 30; var b = 30; var lineheight = 15; var lines = str.split('
'); for (var j = 0; j<lines.length; j++) c.fillText(lines[j], a, b + (j*lineheight) );
// for canvas <canvas id="c" width="200" height="200"></canvas>
// CSS
canvas { background-color: #FFCE9E; }
广告