@techui/colors 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.cn.md DELETED
@@ -1,283 +0,0 @@
1
- # @techui/colors
2
-
3
- **[English](README.md)** | **[中文](README.cn.md)**
4
-
5
- > Color tables for js and less versions developed by ayin.
6
-
7
- **@techui/colors** 曾用名为 **ayin-color**,是一个颜色库工具,旨在帮助开发者摆脱记忆 `#FF0000`、`RGB(255,0,0)` 等繁琐颜色值的困扰,使用更接近自然语言的方式来定义和调用颜色。
8
-
9
- ## ✨ 特性
10
-
11
- - 🎨 **自然语言式命名** - 使用直观的颜色名称,如 `rel5`(红色)、`bll5`(蓝色)
12
- - 📦 **双版本支持** - 提供 V1 和 V2 两个版本,V2 拥有更丰富的颜色数量
13
- - 🔧 **多平台兼容** - 同时支持 JavaScript 和 Less/CSS 版本
14
- - 🌈 **科学配色** - 基于 HSL 色彩模型,通过色相、饱和度、明暗度生成完整色谱
15
- - 🎯 **开箱即用** - 预设数百种颜色值,快速开发无需查表
16
-
17
- ## 🚀 快速开始
18
-
19
- ### JavaScript 使用方式
20
-
21
- 在项目入口文件(如 `main.js`)中引入:
22
-
23
- ```javascript
24
- import { AyinColor } from "@techui/colors"
25
- Vue.use(AyinColor)
26
- ```
27
-
28
- 使用示例:
29
-
30
- ```javascript
31
- // AyinColor V1 - 使用基础色
32
- let color = $c.rel5 // 红色
33
- let blue = $c.bll5 // 蓝色
34
- let gray = $c.gyd4 // 灰色
35
-
36
- // AyinColor V2 - 使用扩展色
37
- let color2 = $c.reA10 // 红色(更细腻的色阶)
38
- let blue2 = $c.blA03 // 蓝色
39
- ```
40
-
41
- ### CSS/Less 使用方式
42
-
43
- #### Vue 2 (vue.config.js)
44
-
45
- 需要先安装依赖:`less`、`less-loader`、`style-resources-loader`
46
-
47
- ```javascript
48
- const path = require('path')
49
-
50
- module.exports = {
51
- pluginOptions: {
52
- 'style-resources-loader': {
53
- preProcessor: 'less',
54
- patterns: [
55
- path.resolve(__dirname, "./node_modules/@techui/colors/base.less"),
56
- path.resolve(__dirname, "./node_modules/@techui/colors/extended.less")
57
- ]
58
- }
59
- }
60
- }
61
- ```
62
-
63
- #### Vue 3 + Vite (vite.config.js)
64
-
65
- 需要先安装依赖:`less`、`less-loader`
66
-
67
- ```javascript
68
- import { defineConfig } from 'vite'
69
- import path from 'path'
70
-
71
- export default defineConfig({
72
- css: {
73
- preprocessorOptions: {
74
- less: {
75
- javascriptEnabled: true,
76
- additionalData: `
77
- @import "${path.resolve(__dirname, './node_modules/@techui/colors/base.less')}";
78
- @import "${path.resolve(__dirname, './node_modules/@techui/colors/extended.less')}";
79
- `
80
- }
81
- }
82
- }
83
- })
84
- ```
85
-
86
- 在样式文件中使用:
87
-
88
- ```less
89
- // AyinColor V1
90
- .text {
91
- color: @rel5;
92
- background-color: @bll5;
93
- border: 1px solid @gyd4;
94
- }
95
-
96
- // AyinColor V2
97
- .text-v2 {
98
- color: @reA10;
99
- background-color: @blA03;
100
- border: 1px solid @gyE05;
101
- }
102
- ```
103
-
104
- ## 🎨 颜色命名规则
105
-
106
- ### V1 版本命名规则
107
-
108
- 颜色命名由 **基础色** + **饱和度** + **明暗度** 组成。
109
-
110
- **25 种基础色**(色相间隔 15°):
111
-
112
- - `re` - 红色 (red)
113
- - `or` - 橙色 (orange)
114
- - `ye` - 黄色 (yellow)
115
- - `ch` - 草绿 (chartreuse)
116
- - `gr` - 绿色 (green)
117
- - `aq` - 水绿 (aquamarine)
118
- - `cy` - 青色 (cyan)
119
- - `bl` - 蓝色 (blue)
120
- - `in` - 靛色 (indigo)
121
- - `pu` - 紫色 (purple)
122
- - `pi` - 粉色 (pink)
123
- - `vi` - 罗兰红 (violetred)
124
- - `gy` - 灰色 (gray)
125
- - 以及中间色:`ro`、`oy`、`yc`、`cg`、`ga`、`ac`、`cb`、`bi`、`ip`、`pp`、`pv`、`vr`
126
-
127
- **4 种饱和度**:
128
-
129
- - `l` - light(淡)
130
- - `m` - middle(中)
131
- - `r` - rost(烤)
132
- - `d` - dark(深)
133
-
134
- **9 级明暗度**:`1`(最淡)到 `9`(最深)
135
-
136
- **示例**:
137
-
138
- - `rel5` - 红色,light 饱和度,5 级明暗
139
- - `bld1` - 蓝色,dark 饱和度,1 级明暗(淡蓝深饱和)
140
- - `rel9` - 红色,light 饱和度,9 级明暗(深红)
141
-
142
- ### V2 版本命名规则
143
-
144
- V2 版本提供更细腻的色阶变化。
145
-
146
- **饱和度**:`A`、`B`、`C`、`D`、`E`、`F` 六种
147
-
148
- **明暗度**:`01` 到 `19` 共 19 级
149
-
150
- **示例**:
151
-
152
- - `reA10` - 红色,A 饱和度,10 级明暗
153
- - `blE05` - 蓝色,E 饱和度,5 级明暗
154
-
155
- ## 🔧 进阶功能
156
-
157
- ### JavaScript 颜色处理函数
158
-
159
- 基于 chroma.js 封装的颜色处理函数:
160
-
161
- ```javascript
162
- // 透明度
163
- let color = $c.fade('bll5', 0.5) // 50% 透明度
164
-
165
- // 色相调整
166
- let hue = $c.hslh('rel5', 30) // 色相偏移 30°
167
-
168
- // 饱和度调整
169
- let sat = $c.hsls('rel5', 0.8)
170
-
171
- // 明暗调整
172
- let light = $c.hsll('rel5', 0.6)
173
-
174
- // 加深/减淡
175
- let darker = $c.darken('bll5', 0.2)
176
- let lighter = $c.lighten('bll5', 0.2)
177
-
178
- // 颜色渐变(生成多个颜色之间的过渡色)
179
- let gradient = $c.scale(['rel5', 'bll5', 'yel5'], 10, 'lch')
180
- // 参数:颜色数组(最少2个)、需要的颜色数量、混合模式(lch/hsl/lab/lrgb,默认 lch)
181
- ```
182
-
183
- ### Less 颜色处理函数
184
-
185
- ```less
186
- .element {
187
- // 透明度
188
- color: fade(@bll5, 50%);
189
-
190
- // 明暗调整
191
- background: lighten(@rel5, 20%);
192
- border-color: darken(@bll5, 10%);
193
-
194
- // 饱和度调整
195
- box-shadow: 0 0 10px saturate(@rel5, 20%);
196
-
197
- // 色相旋转
198
- outline-color: spin(@rel5, 30);
199
-
200
- // 颜色混合
201
- background: mix(@rel5, @bll5, 50%);
202
- }
203
- ```
204
-
205
- 更多 Less 颜色函数请参考 [Less 官方文档](http://lesscss.org/functions/#color-operations)。
206
-
207
- ## 📖 版本选择建议
208
-
209
- ### 使用 V1 版本
210
-
211
- - ✅ 日常项目开发
212
- - ✅ 快速原型设计
213
- - ✅ 需要易于记忆和掌控的配色方案
214
- - ✅ 一般 Web 应用和管理后台
215
-
216
- V1 版本颜色数量适中,易于掌握,能够满足绝大多数项目的配色需求。
217
-
218
- ### 使用 V2 版本
219
-
220
- - ✅ 数据可视化项目
221
- - ✅ 大屏展示系统
222
- - ✅ 需要精细色阶控制
223
- - ✅ 专业设计项目
224
-
225
- V2 版本提供更细腻的颜色变化,适合对配色有更高要求的场景。
226
-
227
- ## 🔨 开发工具
228
-
229
- ### 颜色转换工具
230
-
231
- 项目提供了颜色转换工具,可以将普通颜色值转换为 AyinColor 格式。
232
-
233
- 支持输入格式:
234
-
235
- - 颜色名称:`red`
236
- - 十六进制:`#FF0000`
237
- - RGB/RGBA:`rgb(255, 0, 0)`、`rgba(255, 0, 0, 0.5)`
238
-
239
- 工具会返回 V1 和 V2 版本中的最佳匹配结果,距离参数越小表示与原始颜色越接近。
240
-
241
- 工具位于 `aYinColor-V2 source` 目录中。
242
-
243
- ## 📂 包含文件
244
-
245
- - `ayin-color.less` - V1 CSS 版本
246
- - `ayin-color-expand.less` - V2 CSS 版本
247
- - `ayin-color.js` - JavaScript 版本
248
- - `ayin-color.json` - 静态颜色值 JSON 文件
249
- - `index.js` - 入口文件
250
-
251
- ## 🎯 设计原理
252
-
253
- AyinColor 基于 HSL 色彩模型设计:
254
-
255
- 1. **色相 (Hue)**:从纯红色 `#FF0000` 开始,每隔 15° 生成一个基础色,共 24 个基础色 + 1 个灰色
256
- 2. **饱和度 (Saturation)**:V1 提供 4 级,V2 提供 6 级
257
- 3. **明度 (Lightness)**:V1 提供 9 级,V2 提供 19 级
258
-
259
- 这种设计使得颜色调用更加直观和系统化。
260
-
261
- ## 📚 相关链接
262
-
263
- - 🏠 [官方网站](https://techui.net)
264
- - 📦 [npm 包](https://www.npmjs.com/package/@techui/colors)
265
- - 💻 [GitHub 仓库](https://github.com/aYin86cn/ayin-color)
266
- - 🎥 [Bilibili 视频教程](https://space.bilibili.com/302402751)
267
- - 🎨 [颜色表预览](https://techui.net/)
268
-
269
- ## 👨‍💻 作者
270
-
271
- **Ayin**
272
-
273
- - Email: <ayin86cn@gmail.com>
274
- - WeChat: jay1986cn
275
-
276
- ## 🙏 致谢
277
-
278
- - 基于 [chroma.js](https://gka.github.io/chroma.js/) 开发
279
- - 感谢所有使用和支持 @techui/colors 的开发者
280
-
281
- ---
282
-
283
- **提示**:首次使用建议先查看[视频教程](https://www.bilibili.com/video/BV1kG411h7Px/),了解颜色命名规则和使用技巧。