Ruby,生成随机的十六进制颜色(仅限浅色)

2023-12-08

我知道这可能是重复的问题。Ruby,生成随机的十六进制颜色

我的问题略有不同。我需要知道,如何仅生成随机的六角浅色,而不是深色。


在这个线程中颜色亮度用以下公式描述

(0.2126*r) + (0.7152*g) + (0.0722*b)

亮度的相同公式是维基百科中给出(它取自本出版物)。它反映了人类的感知,其中绿色最“密集”,蓝色最“密集”。

因此,您可以选择 r、g、b,直到亮度值高于light and dark(255 比 0)。例如:

lum, ary = 0, []
while lum < 128
 ary = (1..3).collect {rand(256)}
 lum = ary[0]*0.2126 + ary[1]*0.7152 + ary[2]*0.0722
end

另一篇文章亮度,是r、g、b的算术平均值。请注意,亮度更加主观,因为给定的目标亮度可以在不同的环境中引发不同的亮度感知(特别是周围的颜色会影响您的感知)。

总而言之,这取决于您认为哪种颜色是“浅色”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ruby,生成随机的十六进制颜色(仅限浅色) 的相关文章

随机推荐

  • 有没有办法“逃避”ElasticSearch 停用词?

    我对 ElasticSearch 相当陌生 有一个关于停用词的问题 我有一个索引 其中包含美国的州名 例如 纽约 纽约 加利福尼亚 加利福尼亚 俄勒冈 俄勒冈 我相信俄勒冈州的缩写 OR 是一个停用词 因此当我将州数据插入索引时 我无法搜索
  • Python - 使用列表创建字典

    我在列表中有以下字符串 并且能够使用该列表作为字典中的键并分配默认值 来创建字典 当我打印时 我看到字典是按照列表中字符串的相反顺序创建的 为什么会发生这种情况以及如何纠正它 是否需要反向语法 a hello bye tc iam crea
  • 由于 CORS 问题,无法从 Azure APIM 后面的网页调用 API

    我正在使用 Azure APIM 我的 API 托管在由 net core 编码的 Azure 应用服务上 我已经在 APIM 后面配置了我的 api 然而 当我尝试调用我的 API 时 我遇到了这个问题 访问从原点 获取 http 本地主
  • PHP,来自字符串的虚拟文件,无需写入硬盘

    如果我有一个字符串 包含pdf文件 可以制作一个 虚拟 文件以避免在硬盘上写入 以便稍后在需要现有文件的函数上使用 theorical code file stringToVirtualFile string require file Yo
  • 如何在 QLineEdit 中使用 std::string ?

    我有以下问题 我正在尝试将我编写的大量代码与 Qt 界面集成 我的一些函数返回std string 我没有成功制作QLineEdit setText接受它们 其他函数返回char不要给我带来问题 我应该怎么办 谢谢 朱塞佩 尝试这个 std
  • 未捕获的语法错误:JSON 中位置 0 处出现意外标记 u

    仅在结帐和单个产品页面上 我在控制台日志中收到以下错误 VM35594 1 Uncaught SyntaxError Unexpected token u in JSON at position 0 at JSON parse
  • 如何删除推送通知API

    Apple 在提交 iOS 应用程序时发送以下电子邮件 缺少推送通知权利 您的应用程序似乎包含用于注册 Apple 推送通知服务的 API 但应用程序签名的权利不包括 aps environment 权利 如果您的应用程序使用 Apple
  • 将简单注射器与 Umbraco 控制器结合使用

    我试图将依赖项注入到继承自 Umbraco 的 RenderMvcController 的控制器中并收到错误 找不到 RenderMvcController 类型的注册 并且无法进行隐式注册 为了让容器能够创建 RenderMvcContr
  • nums[:] = nums[::-1] 和 nums = nums[::-1] 之间的区别[重复]

    这个问题在这里已经有答案了 我目前正在学习 Python 并且遇到了分配列表的问题 In def nextPermutation self nums List int gt None 我有一行代码可以反转列表 如下所示 nums nums
  • 二维数组动态内存分配崩溃[重复]

    这个问题在这里已经有答案了 可能的重复 如何在 C 中正确设置 访问和释放多维数组 我正在尝试使用 calloc 为 2D 数组动态分配内存 列固定为 2 因此只有行是动态的 这是我一直在尝试的 unsigned int pts rows
  • 每个关键字的前 'n' 个结果

    我有一个查询 要获取对特定关键字发表评论的前 n 个用户 SELECT user COUNT AS magnitude FROM results WHERE keyword economy GROUP BY user ORDER BY ma
  • 为什么在 main() 内声明 extern 变量可以工作,但在 main() 内定义它却不起作用?

    这看起来很微不足道 但对以下行为的严格解释将有助于我的理解extern很多 所以我会很感激你的回答 在下面的示例程序中 我声明了一个extern多变的x在函数内部 main 现在 如果我在文件范围内定义变量main 并分配8到它 那么程序就
  • 如何防止未更改的组件重新渲染?

    我有一个由多个其他组件 例如文本字段 组成的组件 当向文本字段进行输入时 所有其他组件都会重新呈现 我想阻止重新渲染 只重新渲染实际更改的组件 我已经看到了useCallback是执行此操作的正确方法 我已经了解了如何使用它 但是 我遇到了
  • 如果用户通过社交登录登录,移动应用程序如何使用后端 API 进行身份验证?

    我试图了解移动应用程序上社交登录之间的基本组织和登录流程 以及该应用程序如何从后端 Flask API 请求资源 如果用户通过 Facebook 登录应用程序 后端 api 如何根据该登录提供资源 因为后端似乎不知道用户已经使用 Faceb
  • 选择行值不为空的列名 pandas dataframe

    这是一个示例数据框 A B C 23 45 30 54 39 NaN NaN 45 76 87 32 NaN 我想要一个包含行值不为 NaN 的列名称的列表 或列表列表 预期输出 A B C A B B C A B 这样做的正确方法是什么
  • IIS 崩溃并重新启动,但未删除小型转储

    我正在尝试调试一个艰难的场景 在 Web 表单页面上 当我单击 提交 时 Web 服务器遇到一些错误并重新启动 w3svc 进程 我没有看到任何堆栈跟踪转储到事件日志中 Windows 应用程序日志中的唯一条目是 错误应用程序名称 w3wp
  • System.Reflection.MethodInfo.Invoke 和多线程

    您好 我如何使用线程参数调用 System Reflection MethodInfo Invoke 例如 假设我有一个方法 允许您传入一个表示 类名并动态调用相应的类方法 现在我想要 使用线程调用此 Methodinfo invoke 我
  • 什么允许 id 属性使用字符,以便 jQuery 选择器不会抛出异常?

    我遇到的情况是最终用户输入 id 属性 假设文本框的 id 是用户输入的 11 11 html 代码看起来像
  • 不支持 Any 类型的架构

    我正在尝试创建一个 Spark UDF 以从用户定义的案例类中提取 键 值 对的映射 scala 函数似乎工作正常 但是当我尝试将其转换为 Spark2 0 中的 UDF 时 我遇到了 不支持 Any 类型的架构 错误 case class
  • Ruby,生成随机的十六进制颜色(仅限浅色)

    我知道这可能是重复的问题 Ruby 生成随机的十六进制颜色 我的问题略有不同 我需要知道 如何仅生成随机的六角浅色 而不是深色 在这个线程中颜色亮度用以下公式描述 0 2126 r 0 7152 g 0 0722 b 亮度的相同公式是维基百