diff --git a/lib/pen.js b/lib/pen.js index 6a663b7..aa290fa 100644 --- a/lib/pen.js +++ b/lib/pen.js @@ -222,8 +222,11 @@ export default class Painter { const linesArray = []; for (let i = 0; i < textArray.length; ++i) { const textLength = this.ctx.measureText(textArray[i]).width; + const minWidth = view.css.fontSize.toPx() + paddings[1] + paddings[3]; let partWidth = view.css.width ? view.css.width.toPx(false, this.style.width) - paddings[1] - paddings[3] : textLength; - // partWidth = partWidth > fontSize ? partWidth - partWidth % fontSize + fontSize : fontSize + if (partWidth < minWidth) { + partWidth = minWidth; + } const calLines = Math.ceil(textLength / partWidth); // 取最长的作为 width width = partWidth > width ? partWidth : width; diff --git a/painter.js b/painter.js index c38a1df..4ea8917 100644 --- a/painter.js +++ b/painter.js @@ -314,7 +314,8 @@ Component({ }, true, this.movingCache); } else { // 某些机型(华为 P20)非移动场景下,只绘制一遍会偶然性图片绘制失败,目前采用再绘一遍的方法 - if (!isMoving && doView.type === 'image') { + // 文字也会出现 + if (!isMoving && (doView.type === 'image' || doView.type === 'text')) { pen.paint() } pen.paint((callbackInfo) => {