判断颜色深浅的方法

YUV,是一种颜色编码方法。其中 Y 表示的是明亮度,以下是 Y 的计算公式:

Y = 0.299 * R + 0.587 * G + 0.144 * B

Y 的结果越小表示越暗,越大表示越明亮。

以下是 flutter 判断颜色深浅(明暗)的方法(例子中使用 150 作为阈值,可自行调节):

bool isDeepColor(Color color) {
  var y = 0.299 * color.red + 0.587 * color.green + 0.114 * color.blue;
  return y < 150;
}

发表评论


*