HTML5 畫布 ctx.fillText 不會換行


fillText() 方法在 canvas 中繪製 已填充文字。如果希望換行,可以透過在新行中拆分文字,並多次呼叫 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;
}

更新時間: 09-09-2023

2K+ 觀看次數

開創你的 職業

完成課程以獲取認證

開始學習
廣告
© . All rights reserved.