isSimilar

abstract fun isSimilar(color1: String, color2: String, similarity: Int?, algorithm: String?, ignoreAlpha: Boolean?): Boolean

判断两个颜色是否达到指定相似度。

使用指定算法比较两种颜色的相似度,并判断是否满足设定的阈值要求。 支持多种颜色格式输入和比较策略,满足不同场景的精度需求。

Return

true表示两个颜色的相似度达到或超过阈值,false则表示未达到

Parameters

color1

待比较的第一个颜色,支持格式: - RGB:0x969696、#969696、969696 - ARGB:0xee969696(包含透明度通道)

color2

待比较的第二个颜色,支持格式同上

similarity

相似度阈值(范围0-100): - 0表示最宽松(允许任何颜色) - 100表示最严格(要求完全匹配) null时使用默认阈值(通常为90)

algorithm

比较算法,支持以下值: - "equal": 完全相等匹配(仅当两个颜色完全相同时返回true) - "diff": 基于颜色差值的比较 - "rgb": 分别比较RGB三个通道的差异 - "rgb+": 增强型RGB比较(考虑人眼对不同颜色的敏感度) - "hs": 基于色相和饱和度的比较 null时使用默认算法(通常为"rgb+")

ignoreAlpha

是否忽略透明度通道: - true: 仅比较RGB通道 - false: 同时比较ARGB四个通道 null时默认值为true

Throws

当颜色格式无效、算法不支持或相似度超出范围时抛出