diff --git a/lib/pen.js b/lib/pen.js index ac6e597..d14617d 100644 --- a/lib/pen.js +++ b/lib/pen.js @@ -294,10 +294,9 @@ export default class Painter { const angle = view.css && view.css.rotate ? this._getAngle(view.css.rotate) : 0; // 当设置了 right 时,默认 align 用 right,反之用 left const align = view.css && view.css.align ? view.css.align : (view.css && view.css.right ? 'right' : 'left'); + const verticalAlign = view.css && view.css.verticalAlign ? view.css.verticalAlign : (view.css && view.css.bottom ? 'bottom' : 'top'); // 记录绘制时的画布 let xa = 0; - const ya = y + height / 2; - switch (align) { case 'center': xa = x; @@ -309,6 +308,18 @@ export default class Painter { xa = x + width / 2; break; } + let ya = 0; + switch (verticalAlign) { + case 'center': + ya = y; + break; + case 'bottom': + ya = y - height / 2; + break; + default: + ya = y + height / 2; + break; + } this.ctx.translate(xa, ya); // 记录该 view 的有效点击区域 // TODO ,旋转和裁剪的判断