Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR expands the color format support to include non-hash 6-digit strings and refactors the color conversion logic for easier extensibility.
- Introduces an enum of color patterns for different color modes.
- Refactors color conversion functions into table methods to support future extensions.
- Adds support for non-hashed 6-digit RGB color strings.
Comments suppressed due to low confidence (1)
script/core/color.lua:94
- Ensure there are tests covering non-hashed 6-digit color strings to verify that the rgb6 conversion branch works as expected.
if source.type == 'string' then
in next,t改in pairs(t),写习惯了 Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
不帶井號的 6位/8位長度的 string,不一定就是 color code 吧 😕
local dbconf = {
user = "root",
pass = "123456",
database = "test",
}=> 這樣
local DATA = {
["000000"] = {
field = "a",
},
["000001"] = {
field = "b",
},
}沒有
|
A 6-bit/8-bit length string without a pound mark may not be a color code 😕
local dbconf = {
user = "root",
pass = "123456",
database = "test",
}=> In this way
local DATA = {
["000000"] = {
field = "a",
},
["000001"] = {
field = "b",
},
}No
|
|
啊,那确实是应该加设置,之前八位数字也是会误判成颜色的,只是我运气好没遇见过🤣 |
Ah, that should be set. The previous eight digits would be misjudged as colors, but I was lucky and never met them 🤣 |
| local colorPattern = { | ||
| argb8 = "^%x%x%x%x%x%x%x%x$", | ||
| hexrgb6 = "^#%x%x%x%x%x%x$", | ||
| rgb6 = "^%x%x%x%x%x%x$", | ||
| } | ||
|
|
There was a problem hiding this comment.
The naming scheme is a bit out of the line when compared to their usual meaning in color science. The number usually means the number of bits for each color channel. So, ARGB8 would mean 4 channels where each has 8 bits, while RGB8 would be 3 channels of 8 bits.
If I understand the code correctly, the rgb6 and argb8 in the code store channels as Lua numbers, so doubles. I believe it would be a bit more consistent with some established conventions to drop the number and only specify the channel names.
Some references:
https://en.wikipedia.org/wiki/Color_depth#True_color_(24-bit)
https://www.khronos.org/opengl/wiki/Image_Format
https://photo.stackexchange.com/questions/90171/what-is-difference-between-8bit-rgb-and-16bit-rgb
既然 #3169 增加了
"#RRGGBB"格式颜色的支持,那一些项目中有不带井号的6位颜色字符串也一起支持一下吧顺便把这部分功能做成更容易拓展的了