UNPKG

@fast-china/utils

Version:

Fast 工具库.

1 lines 3.63 kB
{"version":3,"file":"index.mjs","sources":["../../../../src/color/index.ts"],"sourcesContent":["import { FastError } from \"../error\";\n\n/**\n * 颜色工具类\n */\nexport const colorUtil = {\n\t/**\n\t * hex颜色转rgb颜色\n\t * @param str 颜色值字符串\n\t * @returns 返回处理后的颜色值\n\t */\n\thexToRgb(str: any): any {\n\t\tlet hex: any = \"\";\n\t\tconst reg = /^#?[0-9A-F]{6}$/i;\n\t\tif (!reg.test(str)) throw new FastError(\"输入错误的hex\");\n\t\tstr = str.replace(\"#\", \"\");\n\t\thex = str.match(/../g);\n\t\tfor (let i = 0; i < 3; i++) hex[i] = parseInt(hex[i], 16);\n\t\treturn hex;\n\t},\n\t/**\n\t * rgb颜色转Hex颜色\n\t * @param r 代表红色\n\t * @param g 代表绿色\n\t * @param b 代表蓝色\n\t * @returns 返回处理后的颜色值\n\t */\n\trgbToHex(r: any, g: any, b: any): string {\n\t\tconst reg = /^\\d{1,3}$/;\n\t\tif (!reg.test(r) || !reg.test(g) || !reg.test(b)) throw new FastError(\"输入错误的rgb颜色值\");\n\t\tconst hex = [r.toString(16), g.toString(16), b.toString(16)];\n\t\tfor (let i = 0; i < 3; i++) if (hex[i].length === 1) hex[i] = `0${hex[i]}`;\n\t\treturn `#${hex.join(\"\")}`;\n\t},\n\t/**\n\t * 加深颜色值\n\t * @param color 颜色值字符串\n\t * @param level 加深的程度,限0-1之间\n\t * @returns 返回处理后的颜色值\n\t */\n\tgetDarkColor(color: string, level: number): string {\n\t\tconst reg = /^#?[0-9A-F]{6}$/i;\n\t\tif (!reg.test(color)) throw new FastError(\"输入错误的hex颜色值\");\n\t\tconst rgb = this.hexToRgb(color);\n\t\tfor (let i = 0; i < 3; i++) rgb[i] = Math.round(20.5 * level + rgb[i] * (1 - level));\n\t\treturn this.rgbToHex(rgb[0], rgb[1], rgb[2]);\n\t},\n\t/**\n\t * 变浅颜色值\n\t * @param color 颜色值字符串\n\t * @param level 加深的程度,限0-1之间\n\t * @returns 返回处理后的颜色值\n\t */\n\tgetLightColor(color: string, level: number): string {\n\t\tconst reg = /^#?[0-9A-F]{6}$/i;\n\t\tif (!reg.test(color)) throw new FastError(\"输入错误的hex颜色值\");\n\t\tconst rgb = this.hexToRgb(color);\n\t\tfor (let i = 0; i < 3; i++) rgb[i] = Math.round(255 * level + rgb[i] * (1 - level));\n\t\treturn this.rgbToHex(rgb[0], rgb[1], rgb[2]);\n\t},\n};\n"],"names":[],"mappings":";AAKO,MAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMxB,SAAS,KAAe;AACvB,QAAI,MAAW;AACf,UAAM,MAAM;AACR,QAAA,CAAC,IAAI,KAAK,GAAG,EAAS,OAAA,IAAI,UAAU,UAAU;AAC5C,UAAA,IAAI,QAAQ,KAAK,EAAE;AACnB,UAAA,IAAI,MAAM,KAAK;AACrB,aAAS,IAAI,GAAG,IAAI,GAAG,IAAK,KAAI,CAAC,IAAI,SAAS,IAAI,CAAC,GAAG,EAAE;AACjD,WAAA;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,SAAS,GAAQ,GAAQ,GAAgB;AACxC,UAAM,MAAM;AACZ,QAAI,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAS,OAAA,IAAI,UAAU,aAAa;AACnF,UAAM,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;AAC3D,aAAS,IAAI,GAAG,IAAI,GAAG,SAAS,IAAI,CAAC,EAAE,WAAW,EAAO,KAAA,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;AACxE,WAAO,IAAI,IAAI,KAAK,EAAE,CAAC;AAAA,EACxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,aAAa,OAAe,OAAuB;AAClD,UAAM,MAAM;AACR,QAAA,CAAC,IAAI,KAAK,KAAK,EAAS,OAAA,IAAI,UAAU,aAAa;AACjD,UAAA,MAAM,KAAK,SAAS,KAAK;AAC/B,aAAS,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,IAAI,KAAK,MAAM,OAAO,QAAQ,IAAI,CAAC,KAAK,IAAI,MAAM;AAC5E,WAAA,KAAK,SAAS,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAAA,EAC5C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,cAAc,OAAe,OAAuB;AACnD,UAAM,MAAM;AACR,QAAA,CAAC,IAAI,KAAK,KAAK,EAAS,OAAA,IAAI,UAAU,aAAa;AACjD,UAAA,MAAM,KAAK,SAAS,KAAK;AAC/B,aAAS,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC,IAAI,KAAK,MAAM,MAAM,QAAQ,IAAI,CAAC,KAAK,IAAI,MAAM;AAC3E,WAAA,KAAK,SAAS,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAAA,EAAA;AAE7C;"}