feat(data): 重构颜色矩阵处理逻辑,将GlowFilter和相关功能迁移到common/data包
This commit is contained in:
50
common/data/color.go
Normal file
50
common/data/color.go
Normal file
@@ -0,0 +1,50 @@
|
||||
package data
|
||||
|
||||
// 1. 质量枚举常量(保持不变)
|
||||
const (
|
||||
BitmapFilterQualityLow = 1 // LOW:应用1次滤镜
|
||||
BitmapFilterQualityMedium = 2 // MEDIUM:应用2次滤镜
|
||||
BitmapFilterQualityHigh = 3 // HIGH:应用3次滤镜(最大值)
|
||||
)
|
||||
|
||||
// 2. 调整取值范围常量为 uint8 类型(贴合 0-255 范围)
|
||||
const (
|
||||
alphaMin = 0.0
|
||||
alphaMax = 1.0
|
||||
blurMin uint8 = 0 // BlurX/BlurY 最小值
|
||||
blurMax uint8 = 255 // BlurX/BlurY 最大值(uint8上限)
|
||||
strengthMin uint8 = 0 // Strength 最小值
|
||||
strengthMax uint8 = 255 // Strength 最大值(uint8上限)
|
||||
qualityMin = BitmapFilterQualityLow
|
||||
qualityMax = BitmapFilterQualityHigh
|
||||
colorMax = 0xFFFFFF // 颜色值最大值(0xRRGGBB)
|
||||
)
|
||||
|
||||
// 精灵加shinylen字段
|
||||
// 3. 核心结构体:BlurX/BlurY/Strength 改为 uint8
|
||||
type GlowFilter struct {
|
||||
// Color 光晕颜色,十六进制格式 0xRRGGBB,默认值 0xFF0000(红色)
|
||||
Color uint32 `json:"color,omitempty"`
|
||||
|
||||
// Alpha 透明度,0.0~1.0(浮点型,无法用uint8,保留float64)
|
||||
Alpha float32 `json:"alpha,omitempty"`
|
||||
|
||||
// BlurX 水平模糊量,0~255(uint8),默认值 6
|
||||
BlurX uint8 `json:"blurX,omitempty"`
|
||||
|
||||
// BlurY 垂直模糊量,0~255(uint8),默认值 6
|
||||
BlurY uint8 `json:"blurY,omitempty"`
|
||||
|
||||
// Strength 发光强度,0~255(uint8),默认值 2
|
||||
Strength uint8 `json:"strength,omitempty"`
|
||||
|
||||
// Quality 滤镜应用次数,1~3,默认值 1
|
||||
Quality int `json:"quality,omitempty"`
|
||||
|
||||
// Inner 是否内侧发光,默认 false
|
||||
Inner bool `json:"inner,omitempty"`
|
||||
|
||||
// Knockout 是否挖空,默认 false
|
||||
Knockout bool `json:"knockout,omitempty"`
|
||||
ColorMatrixFilter [20]float32 `json:"matrix,omitempty"`
|
||||
}
|
||||
@@ -3,7 +3,8 @@ package rpc
|
||||
import (
|
||||
"blazing/cool"
|
||||
"blazing/modules/base/service"
|
||||
"blazing/modules/blazing/model"
|
||||
"blazing/modules/config/model"
|
||||
|
||||
"context"
|
||||
|
||||
"github.com/butoften/array"
|
||||
|
||||
Reference in New Issue
Block a user