效果:
使用:
var that = this;
const ctx = wx.createCanvasContext('savePic');
var colorText = '肤色晶莹白皙,肤质细腻有透明感,适合搭配一些颜色明亮、轻快一点的色彩,营造轻盈感。';
that.draw_long_text(colorText, ctx, 46, 1271);
封装:
/*
longtext 文案
cxt 对应的canvas
begin_width 开始位置的X坐标
begin_height 开始位置的Y坐标
*/
draw_long_text: function (longtext, cxt, begin_width, begin_height) {
var linelenght = 45;//行高
var text = "";
var count = 0;
var begin_width = begin_width;
var begin_height = begin_height;
var stringLenght = longtext.length;
var newtext = longtext.split("");
var context = cxt;
context.textAlign = 'left';
for (var i = 0; i <= stringLenght; i++) {
if (count == 22) {//count一行显示多少个字
context.fillText(text, begin_width, begin_height);
begin_height = begin_height + linelenght;
text = "";
count = 0;
}
if (i == stringLenght) {
context.fillText(text, begin_width, begin_height);
}
var text = text + newtext[0];
count++;
newtext.shift();
}
},