12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- const colorChange={
- rgbToHex: function (val) {
- var r, g, b, a,
- regRgba = /rgba?\((\d{1,3}),(\d{1,3}),(\d{1,3})(,([.\d]+))?\)/,
- rsa = val.replace(/\s+/g, '').match(regRgba);
- if (!!rsa) {
- r = parseInt(rsa[1]).toString(16);
- r = r.length == 1 ? '0' + r : r;
- g = (+rsa[2]).toString(16);
- g = g.length == 1 ? '0' + g : g;
- b = (+rsa[3]).toString(16);
- b = b.length == 1 ? '0' + b : b;
- a = (+(rsa[5] ? rsa[5] : 1)) * 100;
- return { hex: '#' + r + g + b, r: parseInt(r, 16), g: parseInt(g, 16), b: parseInt(b, 16), alpha: Math.ceil(a) };
- } else {
- return { hex: '无效', alpha: 100 };
- }
- },
- hexToRgb: function (val) {
-
- var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
-
- var color = val.toLowerCase();
- var result = '';
- if (reg.test(color)) {
-
- if (color.length === 4) {
- var colorNew = "#";
- for (var i = 1; i < 4; i += 1) {
- colorNew += color.slice(i, i + 1).concat(color.slice(i, i + 1));
- }
- color = colorNew;
- }
-
- var colorChange = [];
- for (var i = 1; i < 7; i += 2) {
- colorChange.push(parseInt("0x" + color.slice(i, i + 2)));
- }
- result = "rgb(" + colorChange.join(",") + ")";
- return { rgb: result, r: colorChange[0], g: colorChange[1], b: colorChange[2] };
- } else {
- result = '无效';
- return { rgb: result };
- }
- }
- };
- module.exports = colorChange
|