UNPKG

tdesign-mobile-vue

Version:
1 lines 5.75 kB
{"version":3,"file":"cmyk.mjs","sources":["../../../../src/_common/js/color-picker/cmyk.ts"],"sourcesContent":["/**\n * rgb 转 cmyk\n * @param red\n * @param green\n * @param blue\n * @returns\n */\nexport const rgb2cmyk = (red: number, green: number, blue: number) => {\n let computedC = 0;\n let computedM = 0;\n let computedY = 0;\n let computedK = 0;\n\n const r = parseInt(`${red}`.replace(/\\s/g, ''), 10);\n const g = parseInt(`${green}`.replace(/\\s/g, ''), 10);\n const b = parseInt(`${blue}`.replace(/\\s/g, ''), 10);\n\n if (r === 0 && g === 0 && b === 0) {\n computedK = 1;\n return [0, 0, 0, 1];\n }\n\n computedC = 1 - r / 255;\n computedM = 1 - g / 255;\n computedY = 1 - b / 255;\n\n const minCMY = Math.min(computedC, Math.min(computedM, computedY));\n computedC = (computedC - minCMY) / (1 - minCMY);\n computedM = (computedM - minCMY) / (1 - minCMY);\n computedY = (computedY - minCMY) / (1 - minCMY);\n computedK = minCMY;\n\n return [computedC, computedM, computedY, computedK];\n};\n\n/**\n * cmyk 转 rgb\n * @param cyan\n * @param magenta\n * @param yellow\n * @param black\n * @returns\n */\nexport const cmyk2rgb = (cyan: number, magenta: number, yellow: number, black: number) => {\n let c = cyan / 100;\n let m = magenta / 100;\n let y = yellow / 100;\n const k = black / 100;\n\n c = c * (1 - k) + k;\n m = m * (1 - k) + k;\n y = y * (1 - k) + k;\n\n let r = 1 - c;\n let g = 1 - m;\n let b = 1 - y;\n\n r = Math.round(255 * r);\n g = Math.round(255 * g);\n b = Math.round(255 * b);\n return {\n r,\n g,\n b,\n };\n};\n\nconst REG_CMYK_STRING = /cmyk\\((\\d+%?),(\\d+%?),(\\d+%?),(\\d+%?)\\)/;\n\nconst toNumber = (str: string) => Math.max(0, Math.min(255, parseInt(str, 10)));\n\n/**\n * 输入色转rgb\n * @param input\n * @returns\n */\nexport const cmykInputToColor = (input: string) => {\n if (/cmyk/i.test(input)) {\n const str = input.replace(/\\s/g, '');\n const match = str.match(REG_CMYK_STRING);\n const c = toNumber(match[1]);\n const m = toNumber(match[2]);\n const y = toNumber(match[3]);\n const k = toNumber(match[4]);\n const { r, g, b } = cmyk2rgb(c, m, y, k);\n return `rgb(${r}, ${g}, ${b})`;\n }\n return input;\n};\n"],"names":["rgb2cmyk","red","green","blue","computedC","computedM","computedY","computedK","r","parseInt","concat","replace","g","b","minCMY","Math","min","cmyk2rgb","cyan","magenta","yellow","black","c","m","y","k","round","REG_CMYK_STRING","toNumber","str","max","cmykInputToColor","input","test","match","_cmyk2rgb"],"mappings":"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"}