资源描述
RGB转Lab的VB代码
在网上搜索了很久,也没有看到用VB写的RGB转Lab的代码,现根据网上通用的转换算法改写成VB代码(转换后与CIE-Lab的标准色卡有差异,附色卡Lab与RGB对照表),希望能抛砖引玉。代码如下:
’RGB转Lab
Sub RGB_Lab(R1, G1, B1 As Long, L, A, B As Currency)’ R1,G1,B1为颜色三分量值,先赋值
Dim R2, G2, B2, X1, Y1, Z1 As Currency
R2 = R1 / 255
G2 = G1 / 255
B2 = B1 / 255
'If R2 > 0.04045 Then R2 = ((R2 + 0.055) / 1.055) ^ 2.4 Else R2 = R2 / 12.92
'If G2 > 0.04045 Then G2 = ((G2 + 0.055) / 1.055) ^ 2.4 Else G2 = G2 / 12.92
'If B2 > 0.04045 Then B2 = ((B2 + 0.055) / 1.055) ^ 2.4 Else B2 = B2 / 12.92
R2 = R2 / 12.92
G2 = G2 / 12.92
B2 = B2 / 12.92
X1 = R2 * 0.412453 + G2 * 0.35758 + B2 * 0.180423
Y1 = R2 * 0.212671 + G2 * 0.71516 + B2 * 0.072169
Z1 = R2 * 0.019334 + G2 * 0.119193 + B2 * 0.950227
X1 = X1 / 0.95047
Y1 = Y1 / 1
Z1 = Z1 / 1.08883
If Y1 > 0.008856 Then L = 116 * (Y1 ^ (1 / 3)) - 16 Else L = 903.3 * Y1
If X1 > 0.008856 Then X1 = X1 ^ (1 / 3) Else X1 = 7.787 * X1 + 0.137931
If Y1 > 0.008856 Then Y1 = Y1 ^ (1 / 3) Else Y1 = 7.787 * Y1 + 0.137931
If Z1 > 0.008856 Then Z1 = Z1 ^ (1 / 3) Else Z1 = 7.787 * Z1 + 0.137931
A = 500 * (X1 - Y1)
B = 200 * (Y1 - Z1)
End Sub
主程序调用RGB_Lab 后,返回Lab值,
序号
PANTONE
NO
色样
LAB
CMYK配方
RGB值
L
亮度
A
洋红-绿
B
黄-蓝
C
青
M
洋红
Y
黄
K
黑
R
红
G
绿
B
蓝
RGB
色码
1
100C
93
-8
50
0
0
51
0
243
237
134
#F3ED86
2
101C
92
-9
66
0
0
79
0
245
236
98
#F5EC62
3
102C
91
-7
100
0
0
100
0
250
230
0
#FAE600
4
103C
71
0
91
0
0
100
18
202
173
0
#CAAD00
5
104C
62
-1
74
0
0
100
30
172
150
0
#AC9600
6
105C
48
-1
49
0
0
100
51
129
114
20
#817214
7
106C
91
-6
65
0
0
72
0
246
231
97
#F6E761
8
107C
90
-4
81
0
0
79
0
250
226
47
#FAE22F
9
108C
88
0
95
0
0
100
0
254
219
0
#FEDB00
10
109C
86
5
100
0
9
94
0
255
209
0
#FFD100
11
110C
73
7
94
0
11
94
6
219
174
0
#DBAE00
12
111C
61
4
75
0
11
100
27
175
143
0
#AF8F00
13
112C
55
2
62
0
11
100
38
153
128
0
#998000
14
113C
90
-2
67
0
6
69
0
250
225
90
#FAE15A
15
114C
89
-2
70
0
6
72
0
250
224
81
#FAE051
16
115C
89
-1
72
0
9
79
0
251
222
74
#FBDE4A
17
116C
85
7
93
0
15
94
0
255
206
0
#FFCE00
18
117C
68
10
83
0
18
100
15
206
157
0
#CE9D00
19
118C
60
8
73
0
18
100
27
179
138
0
#B38A00
20
119C
50
1
49
0
11
100
51
138
118
26
#8A761A
21
120C
89
0
53
0
6
56
0
249
223
121
#F9DF79
22
1205C
90
0
31
0
0
27
0
243
226
167
#F3E2A7
23
121C
89
2
57
0
9
69
0
251
219
110
#FBDB6E
24
1215C
89
1
40
0
6
43
0
245
221
146
#F5DD92
25
122C
87
5
68
0
18
83
0
253
212
79
#FDD44F
26
1225C
84
11
69
0
15
60
0
253
199
69
#FDC745
27
123C
84
12
79
0
30
94
0
255
199
38
#FFC726
28
1235C
79
22
85
0
27
76
0
255
179
0
#FFB300
29
124C
75
16
85
0
27
100
6
235
171
0
#EBAB00
30
1245C
64
13
69
0
27
100
18
198
146
0
#C69200
31
125C
61
12
72
0
23
100
27
187
137
0
#BB8900
32
1255C
56
10
59
0
27
100
34
170
128
14
#AA800E
33
126C
55
8
60
0
23
100
34
161
124
0
#A17C00
34
1265C
46
7
46
0
27
100
51
131
101
20
#836514
35
127C
89
-3
46
0
6
51
0
239
223
133
#EFDF85
36
128C
86
0
61
0
9
65
0
242
214
94
#F2D65E
37
129C
84
3
69
0
15
76
0
241
205
68
#F1CD44
38
130C
75
18
86
0
27
100
0
241
171
0
#F1AB00
39
131C
65
19
80
0
27
100
9
212
145
0
#D49100
40
132C
55
11
64
0
23
100
30
166
122
0
#A67A00
41
133C
39
5
41
0
18
100
56
133
89
19
#715913
42
134C
87
5
45
0
9
43
0
248
213
131
#F8D583
43
1345C
86
10
39
0
11
47
0
251
207
141
#FBCF8D
44
135C
84
12
61
0
18
60
0
254
200
90
#FEC85A
45
1355C
84
13
45
0
18
56
0
253
200
125
#FDC87D
46
136C
81
18
71
0
27
79
0
255
188
58
#FFBC3A
47
1365C
80
21
60
0
30
79
0
255
183
84
#FFB754
48
137C
75
32
87
0
34
91
0
255
159
0
#FF9F00
49
1375C
74
35
81
0
38
76
0
255
154
0
#FF9A00
50
138C
64
35
83
0
38
94
0
228
127
0
#E47F00
51
1385C
60
34
74
0
47
100
9
214
117
0
#D67500
52
139C
54
23
68
0
38
100
23
182
113
0
#B67100
53
1395C
47
21
53
0
43
100
38
158
96
9
#9E6209
54
140C
40
11
43
0
27
100
56
122
86
15
#7A560F
55
1405C
34
13
36
0
38
100
65
108
71
19
#6C4713
56
141C
83
6
53
0
11
47
0
239
200
104
#EFC868
57
142C
79
12
64
0
23
76
0
241
187
70
#F1BB46
58
143C
75
19
72
0
30
83
0
239
170
35
#EFAA23
59
144C
65
38
79
0
47
100
0
237
128
0
#ED8000
60
145C
59
31
71
0
47
100
9
207
118
0
#CF7600
61
146C
47
22
56
0
38
100
34
159
96
0
#9F6000
62
147C
39
6
35
0
27
100
69
113
88
33
#715821
63
148C
86
11
31
0
11
38
0
251
208
157
#FBD09D
64
1485C
81
26
42
0
23
56
0
255
181
123
#FFB57B
65
149C
84
15
39
0
18
51
0
254
198
136
#FEC688
66
1495C
74
41
65
0
30
69
0
255
150
59
#FF963B
67
150C
77
29
59
0
30
69
0
255
169
79
#FFA94F
68
1505C
67
56
90
0
38
76
0
255
114
0
#FF7200
69
151C
66
53
86
0
43
87
0
255
115
0
#FF7300
70
152C
61
44
77
0
51
100
0
231
111
0
#E76F00
71
1525C
50
48
73
0
65
100
11
202
78
0
#CA4E00
72
153C
53
33
63
0
43
100
18
192
102
0
#C06600
73
1535C
38
34
53
0
51
100
38
147
63
0
#933F00
74
154C
44
26
50
0
43
100
34
153
84
9
#995409
75
1545C
21
19
26
0
51
100
83
81
38
11
#51260B
76
155C
87
4
22
0
9
27
0
236
214
175
#ECD6AF
77
1555C
83
21
25
0
18
34
0
255
191
160
#FFBFA0
78
156C
81
12
34
0
18
43
0
239
193
138
#EFC18A
79
1565C
78
31
37
0
34
51
0
255
169
125
#FFA97D
80
157C
71
27
52
0
38
76
0
237
155
79
#ED9B4F
81
1575C
70
46
58
0
43
72
0
255
134
66
#FF8642
82
158C
60
47
66
0
60
94
0
233
107
16
#E96B10
83
1585C
64
57
74
0
56
87
0
255
105
0
#FF6900
84
159C
53
45
61
0
65
100
9
205
88
6
#CD5806
85
1595C
55
48
64
0
60
100
6
218
92
5
#DA5C05
86
160C
44
33
48
0
60
100
34
162
78
18
#A24E12
87
1605C
43
35
47
0
56
100
30
162
74
19
#A24A13
88
161C
27
18
27
0
51
100
69
97
53
23
#613517
89
1615C
35
30
40
0
56
100
43
133
60
16
#853C10
90
162C
84
19
21
0
11
18
0
253
195
170
#FDC3AA
91
1625C
76
35
28
0
30
38
0
255
162
139
#FFA28B
92
163C
75
37
40
0
30
47
0
255
156
113
#FF9C71
93
1635C
72
44
37
0
38
47
0
255
142
112
#FF8E70
94
164C
69
50
56
0
47
76
0
255
126
67
#FF7E43
95
1645C
65
57
56
0
47
60
0
255
108
59
#FF6C3B
96
165C
63
61
75
0
60
100
0
255
95
0
#FF5F00
97
1655C
60
65
72
0
65
87
0
255
82
0
#FF5200
98
166C
56
56
70
0
65
100
0
229
83
0
#E55300
99
1665C
54
60
67
0
69
100
0
229
72
0
#E54800
100
167C
49
44
56
0
60
100
18
194
81
15
#C2510F
101
1675C
41
44
48
0
69
100
30
168
60
15
#A83C0F
102
168C
29
27
31
0
56
100
60
111
48
20
#6F3014
103
1685C
34
34
37
0
69
100
43
134
53
20
#863514
104
169C
81
27
14
0
18
18
0
255
182
177
#FFB6B1
105
170C
71
47
30
0
38
47
0
255
137
123
#FF897B
106
171C
64
62
52
0
51
69
0
255
97
65
#FF6141
107
172C
58
68
70
0
65
83
0
253
71
3
#FD4703
108
173C
51
57
56
0
69
100
6
216
69
25
#D84519
109
174C
37
42
41
0
69
100
38
154
52
22
#9A3416
110
175C
29
27
24
0
60
87
65
112
50
34
#703222
111
176C
79
33
7
0
23
15
0
255
172
185
#FFACB9
112
1765C
75
39
6
0
43
23
0
254
157
176
#FE9DB0
113
1767C
79
30
2
0
27
11
0
250
175
194
#FAAFC2
114
177C
70
52
19
0
47
43
0
255
129
140
#FF818C
115
1775C
70
49
11
0
51
30
0
255
133
154
#FF859A
116
1777C
64
60
16
0
60
38
0
251
101
129
#FB6581
117
178C
63
65
34
0
60
56
0
255
91
96
#FF5B60
118
1785C
58
69
31
0
69
51
0
249
69
91
#F9455B
119
1787C
58
70
28
0
76
60
0
249
66
95
#F9425F
120
1788C
53
74
47
0
87
91
0
240
34
51
#F02233
121
179C
52
65
51
0
79
94
0
226
56
40
#E23828
122
1795C
47
68
45
0
94
100
0
216
31
42
#D81F2A
123
1797C
46
65
38
0
94
94
6
208
36
51
#D02433
124
180C
45
55
40
0
76
83
11
192
54
44
#C0362C
125
1805C
40
56
34
0
91
100
23
176
35
42
#B0232A
126
1807C
37
50
27
0
91
94
30
161
40
48
#A12830
127
181C
29
36
25
0
72
79
47
121
39
32
#792720
128
1815C
28
41
30
0
91
100
51
124
33
30
#7C211E
129
1817C
24
26
12
0
72
83
76
94
39
40
#5E2728
130
182C
81
26
0
0
27
9
0
248
184
203
#F8B8CB
131
183C
72
45
5
0
51
23
0
252
141
169
#FC8DA9
132
184C
62
62
15
0
72
43
0
248
93
129
#F85D7E
133
185C
50
76
42
0
91
76
0
234
4
55
#EA0437
134
186C
45
69
37
0
91
76
6
210
16
52
#D21034
135
187C
40
59
28
0
91
72
23
179
27
52
#B31B34
136
188C
29
40
15
0
79
65
47
124
34
48
#7C2230
137
189C
76
36
-1
0
38
11
0
248
161
190
#F8A1BE
138
1895C
82
23
-4
0
30
6
0
243
188
212
#F3BCD4
139
190C
67
53
4
0
56
23
0
248
119
158
#F8779E
140
1905C
74
38
-3
0
43
6
0
245
155
189
#F59BBD
141
191C
56
70
15
0
76
38
0
242
63
114
#F23F72
142
1915C
60
64
5
0
72
15
0
242
85
138
#F2558A
143
192C
50
76
31
0
94
65
0
233
6
73
#E90649
144
1925C
49
76
25
0
94
51
0
228
0
80
#E40050
145
193C
42
66
26
0
91
65
11
195
12
62
#C30C3E
146
1935C
44
69
23
0
100
60
6
203
4
71
#CB0447
147
194C
35
52
16
0
91
56
34
156
30
61
#9C1E3D
148
1945C
37
59
18
0
100
56
18
170
17
63
#AA113F
149
1955C
33
51
13
0
87
43
30
147
23
59
#93173B
150
196C
84
15
-1
0
27
6
0
235
198
211
#EBC6D3
151
197C
73
33
1
0
47
11
0
235
155
178
#EB9BB2
152
198C
56
61
15
0
79
34
0
228
77
11
#E44D6F
153
199C
47
72
32
0
100
65
0
219
12
65
#DB0C41
154
200C
42
66
31
0
100
65
15
193
4
53
#C10435
155
201C
35
53
22
0
100
65
34
158
27
52
#9E1B34
156
202C
31
45
16
0
100
65
47
137
32
52
#892034
157
203C
77
27
-7
0
34
0
0
235
173
205
#EBADCD
158
204C
65
47
-6
0
60
0
0
232
123
172
#E87BAC
159
205C
55
65
1
0
76
6
0
227
69
133
#E34585
160
206C
45
75
22
0
100
43
0
215
0
77
#D7004D
161
207C
38
63
17
0
100
43
18
177
0
66
#B10042
162
208C
33
48
6
0
91
34
38
144
33
71
#902147
163
209C
29
37
3
0
83
34
51
117
38
65
#752641
164
210C
76
39
-8
0
43
6
0
250
159
204
#FA9FCC
165
211C
69
53
-8
0
56
6
0
249
125
184
#F97DB8
166
212C
59
68
-5
0
72
6
0
243
78
154
#F34E9A
167
213C
51
76
4
0
100
30
0
230
21
119
#E61577
168
214C
45
72
7
0
100
34
9
208
0
99
#D00063
169
215C
38
60
5
0
94
34
27
170
16
84
#AA1054
170
216C
28
42
2
0
83
34
47
122
29
66
#7A1D42
171
217C
81
22
-10
0
30
0
0
236
187
221
#ECBBDD
172
218C
64
54
-16
0
65
0
0
232
111
184
#E86FB8
173
219C
51
74
-8
0
87
0
0
224
33
138
#E0218A
174
220C
37
66
3
0
100
18
18
174
0
85
#AE0055
175
221C
32
58
2
0
100
18
34
150
0
75
#96004B
176
222C
25
39
-2
0
100
15
60
108
25
63
#6C193F
177
223C
73
43
-16
0
51
0
0
242
147
209
#F293D1
178
224C
64
59
-19
0
69
0
0
239
106
191
#EF6ABF
179
225C
53
76
-17
0
83
0
0
229
35
157
#E5239D
180
226C
45
80
-5
0
100
0
0
214
0
119
#D60077
181
227C
36
68
-4
0
100
0
23
174
0
95
#AE005F
182
228C
30
53
-6
0
94
0
43
138
7
83
#8A0753
183
229C
25
37
-5
0
87
15
65
106
29
68
#6A1D44
184
230C
78
36
-14
0
34
0
0
247
167
219
#F7A7DB
185
231C
67
57
-20
0
65
0
0
245
117
201
#F575C9
186
232C
58
73
-20
0
79
0
0
239
64
176
#EF40B0
187
233C
44
75
-14
11
100
0
0
201
0
129
#C90081
188
234C
36
63
-12
6
100
0
30
166
0
107
#A6006B
189
235C
30
53
-9
6
100
0
43
137
8
87
#890857
190
236C
79
30
-14
6
38
0
0
242
176
223
#F2B0DF
191
2365C
84
20
-10
0
30
0
0
239
195
228
#EFC3E4
192
237C
69
48
-22
6
65
0
0
238
134
211
#EE86D3
193
2375C
64
54
-28
11
60
0
0
226
112
205
#E270CD
194
238C
59
65
-25
9
76
0
0
230
83
188
#E653BC
195
2385C
52
71
-31
18
83
0
0
215
51
180
#D733B4
196
239C
53
73
-26
18
94
0
0
224
50
175
#E032AF
197
2395C
42
79
-30
34
94
0
0
196
0
152
#C40098
198
240C
46
69
-25
27
94
0
0
196
30
153
#C41E99
199
2405C
36
70
-28
43
94
0
0
167
0
132
#A70084
200
241C
39
65
-22
27
94
0
9
172
4
129
#AC0481
201
2415C
33
64
-25
51
94
0
0
151
0
118
#970076
202
242C
29
45
-12
9
94
0
51
122
26
87
#7A1A57
203
2425C
28
55
-20
51
100
0
6
130
0
99
#820063
204
243C
80
24
-16
6
30
0
0
232
183
229
#E8B7E5
205
244C
75
33
-21
9
38
0
0
230
162
224
#E6A2E0
206
245C
67
46
-28
15
60
0
0
223
129
214
#DF81D6
207
246C
46
74
-36
30
91
0
0
199
11
172
#C70BAC
208
247C
41
71
-36
38
94
0
0
183
0
157
#B3009D
209
248C
36
63
-31
43
94
0
15
158
3
137
#9E0389
210
249C
30
44
-19
30
87
0
47
123
34
102
#7B2266
211
250C
82
18
-14
6
18
0
0
227
192
230
#E3C0E6
212
251C
72
32
-26
15
43
0
0
217
156
225
#D99CE1
213
252C
58
52
-38
23
56
0
0
202
101
209
#CA65D1
214
253C
42
66
-46
47
91
0
0
169
27
176
#A91BB0
215
254C
38
57
-39
51
94
0
0
150
35
153
#962399
216
255C
29
40
-25
51
91
0
34
112
38
108
#70266C
217
256C
80
14
-13
9
23
0
0
217
191
224
#D9BFE0
218
2562C
73
24
展开阅读全文