From 2e630f44c6b4cd5f830ed892b476d0179c183e4c Mon Sep 17 00:00:00 2001 From: liyongning Date: Tue, 22 Mar 2022 16:36:54 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20hexToRgba=20?= =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E5=87=BA=E9=94=99=E7=9A=84=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/shared/color.js | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/shared/color.js b/src/shared/color.js index bff29f61c..fb2d2168d 100644 --- a/src/shared/color.js +++ b/src/shared/color.js @@ -8,14 +8,14 @@ a: number; } */ -export function hexToRgba (hex) { +export function hexToRgba(hex) { // 异常情况 if (!hex) { return { r: 0, g: 0, b: 0, - a: 0 + a: 0, } } // 去掉 # @@ -27,24 +27,24 @@ export function hexToRgba (hex) { r: 0, g: 0, b: 0, - a: 0 + a: 0, } } // 格式化 tmpHex,使其变成 rrggbb 或 rrggbbaa if (tmpHexLen === 3 || tmpHexLen === 4) { // rgb => rrggbb || rgba => rrggbbaa - tmpHex = tmpHex.replace(/(\w{1})/g, 'r1r1') + tmpHex = tmpHex.replace(/(\w{1})/g, '$1$1') } - // r1 ~ a2 - const [r1, r2, g1, g2, b1, b2, a1, a2] = tmpHex.match(/(\w{1})/g) + // rgba + let [sr, sg, sb, sa] = tmpHex.match(/(\w{2})/g) // rgb - const r = parseInt(r1) * 16 + parseInt(r2); const g = parseInt(g1) * 16 + parseInt(g2); const b = parseInt(b1) * 16 + parseInt(b2) + const r = parseInt(sr, 16), g = parseInt(sg, 16), b = parseInt(sb, 16) - if (!a1) { + if (!sa) { return { r, g, b, a: 1 } } return { - r, g, b, a: (`0x100${a1}${a2}` - 0x10000) / 255 + r, g, b, a: (`0x100${sa}` - 0x10000) / 255 } } -- GitLab