UNPKG

1.12 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.toRGB = void 0;
4var arr2rgb_1 = require("./arr2rgb");
5var RGB_REG = /rgba?\(([\s.,0-9]+)\)/;
6/**
7 * 创建辅助 tag 取颜色
8 * @returns
9 */
10function createTmp() {
11 var i = document.createElement('i');
12 i.title = 'Web Colour Picker';
13 i.style.display = 'none';
14 document.body.appendChild(i);
15 return i;
16}
17var iEl;
18/**
19 * 将颜色转换到 rgb 的格式
20 * @param {color} color 颜色
21 * @return 将颜色转换到 '#ffffff' 的格式
22 */
23function toRGB(color) {
24 // 如果已经是 rgb的格式
25 if (color[0] === '#' && color.length === 7) {
26 return color;
27 }
28 if (!iEl) {
29 // 防止防止在页头报错
30 iEl = createTmp();
31 }
32 iEl.style.color = color;
33 var rst = document.defaultView.getComputedStyle(iEl, '').getPropertyValue('color');
34 var matches = RGB_REG.exec(rst);
35 var cArray = matches[1].split(/\s*,\s*/).map(function (s) { return Number(s); });
36 rst = (0, arr2rgb_1.arr2rgb)(cArray);
37 return rst;
38}
39exports.toRGB = toRGB;
40//# sourceMappingURL=torgb.js.map
\No newline at end of file