@iimm/shared
Version:
shared utils on browser and react env
153 lines (152 loc) • 3.86 kB
TypeScript
/** 将文本颜色转化为对象 */
export declare const stringColorToObjectColor: (color?: string) => false | {
r: number;
g: number;
b: number;
a: number;
format: string;
type: string;
h?: undefined;
s?: undefined;
l?: undefined;
v?: undefined;
} | {
r: any;
g: any;
b: any;
type: string;
a?: undefined;
format?: undefined;
h?: undefined;
s?: undefined;
l?: undefined;
v?: undefined;
} | {
r: any;
g: any;
b: any;
a: any;
type: string;
format?: undefined;
h?: undefined;
s?: undefined;
l?: undefined;
v?: undefined;
} | {
h: any;
s: any;
l: any;
type: string;
r?: undefined;
g?: undefined;
b?: undefined;
a?: undefined;
format?: undefined;
v?: undefined;
} | {
h: any;
s: any;
l: any;
a: any;
type: string;
r?: undefined;
g?: undefined;
b?: undefined;
format?: undefined;
v?: undefined;
} | {
h: any;
s: any;
v: any;
type: string;
r?: undefined;
g?: undefined;
b?: undefined;
a?: undefined;
format?: undefined;
l?: undefined;
} | {
h: any;
s: any;
v: any;
a: any;
type: string;
r?: undefined;
g?: undefined;
b?: undefined;
format?: undefined;
l?: undefined;
} | {
r: number;
g: number;
b: number;
format: string;
type: string;
a?: undefined;
h?: undefined;
s?: undefined;
l?: undefined;
v?: undefined;
};
export declare const hslToRgb: (h: number | string, s: number | string, l: number | string) => {
r: number;
g: number;
b: number;
};
/** Converts an RGB color value to HSV
*Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
*Returns:* { h, s, v } in [0,1]
**/
export declare const rgbToHsv: (r: number | string, g: number | string, b: number | string) => {
h: any;
s: number;
v: number;
};
/** Converts an HSV color value to RGB.
*Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
*Returns:* { r, g, b } in the set [0, 255]
*/
export declare const hsvToRgb: (h: number | string, s: number | string, v: number | string) => {
r: number;
g: number;
b: number;
};
/** Converts an RGB color to hex(without #)
Assumes r, g, and b are contained in the set [0, 255]
Returns a 3 or 6 character hex
*/
export declare const rgbToHex: (r: number | string, g: number | string, b: number | string, allow3Char?: boolean) => string;
/** Converts an RGBA color plus alpha transparency to hex(lowerCase,without #)
Assumes r, g, b are contained in the set [0, 255] and
a in [0, 1]. Returns a 4 or 8 character rgba hex
*/
export declare const rgbaToHex: (r: number | string, g: number | string, b: number | string, a: number | string, allow4Char?: boolean) => string;
/** Converts an RGBA color to an ARGB Hex8 string
Rarely used, but required for "toFilter()"
*/
export declare const rgbaToArgbHex: (r: number | string, g: number | string, b: number | string, a: number | string) => string;
/** Given a string or object, convert that input to RGB
@example
```
Possible string inputs:
"red"
"#f00" or "f00"
"#ff0000" or "ff0000"
"#ff000000" or "ff000000"
"rgb 255 0 0" or "rgb (255, 0, 0)"
"rgb 1.0 0 0" or "rgb (1, 0, 0)"
"rgba (255, 0, 0, 1)" or "rgba 255, 0, 0, 1"
"rgba (1.0, 0, 0, 1)" or "rgba 1.0, 0, 0, 1"
"hsl(0, 100%, 50%)" or "hsl 0 100% 50%"
"hsla(0, 100%, 50%, 1)" or "hsla 0 100% 50%, 1"
"hsv(0, 100%, 100%)" or "hsv 0 100% 100%"
```
*/
export declare const colorToRGBObjColor: (color: any) => {
ok: boolean;
format: any;
r: number;
g: number;
b: number;
a: number;
};