From 0b14d3990d916029fec6d3264e3ab77c7ea77822 Mon Sep 17 00:00:00 2001 From: CPPAlien Date: Mon, 25 Nov 2019 09:32:26 +0800 Subject: [PATCH] =?UTF-8?q?border=20=E6=94=AF=E6=8C=81=20=E7=99=BE?= =?UTF-8?q?=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/pen.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/pen.js b/lib/pen.js index 5fd164a..8535907 100644 --- a/lib/pen.js +++ b/lib/pen.js @@ -90,18 +90,19 @@ export default class Painter { r2 = 0, r3 = 0, r4 = 0 + const minSize = Math.min(width, height); if (borderRadius) { const border = borderRadius.split(/\s+/) if (border.length === 4) { - r1 = Math.min(border[0].toPx(), width / 2, height / 2); - r2 = Math.min(border[1].toPx(), width / 2, height / 2); - r3 = Math.min(border[2].toPx(), width / 2, height / 2); - r4 = Math.min(border[3].toPx(), width / 2, height / 2); + r1 = Math.min(border[0].toPx(false, minSize), width / 2, height / 2); + r2 = Math.min(border[1].toPx(false, minSize), width / 2, height / 2); + r3 = Math.min(border[2].toPx(false, minSize), width / 2, height / 2); + r4 = Math.min(border[3].toPx(false, minSize), width / 2, height / 2); } else { - r1 = r2 = r3 = r4 = Math.min(borderRadius && borderRadius.toPx(), width / 2, height / 2); + r1 = r2 = r3 = r4 = Math.min(borderRadius && borderRadius.toPx(false, minSize), width / 2, height / 2); } } - const lineWidth = borderWidth && borderWidth.toPx(); + const lineWidth = borderWidth && borderWidth.toPx(false, minSize); this.ctx.lineWidth = lineWidth; if (borderStyle === 'dashed') { this.ctx.setLineDash([lineWidth * 4 / 3, lineWidth * 4 / 3]);