Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Language agnostic 随机的非白色颜色,看起来可以作为黑色文本的背景_Language Agnostic_Colors_Background Color - Fatal编程技术网

Language agnostic 随机的非白色颜色,看起来可以作为黑色文本的背景

Language agnostic 随机的非白色颜色,看起来可以作为黑色文本的背景,language-agnostic,colors,background-color,Language Agnostic,Colors,Background Color,我想使用色调、饱和度和亮度生成随机的非白色颜色,这些颜色可以用作黑色文本的背景。我已经为随机颜色创建了一个生成器,但是当我扫描这些数字时,我看不到任何颜色中的清晰图案,因为这些颜色看起来太暗了 如何为黑色文本生成随机的非白色背景色?可以用代码或伪代码回答,但这绝对不是必需的。仅生成具有高亮度值的颜色-例如,如果对{H,s,V}中的每一个使用0-255范围,则在[0255]中生成H,在[0255]中生成s,在[0255]中生成V[168255]。这会给您提供足够明亮的颜色。您可能还需要限制饱和度(

我想使用色调、饱和度和亮度生成随机的非白色颜色,这些颜色可以用作黑色文本的背景。我已经为随机颜色创建了一个生成器,但是当我扫描这些数字时,我看不到任何颜色中的清晰图案,因为这些颜色看起来太暗了


如何为黑色文本生成随机的非白色背景色?可以用代码或伪代码回答,但这绝对不是必需的。

仅生成具有高亮度值的颜色-例如,如果对{H,s,V}中的每一个使用0-255范围,则在[0255]中生成H,在[0255]中生成s,在[0255]中生成V[168255]。这会给您提供足够明亮的颜色。您可能还需要限制饱和度(例如[0192]中的S),因为全亮、全饱和颜色上的黑色可能不太可读


您可能需要使用这些值来获得可以提供可用颜色的范围。

我不知道颜色理论,但您可以尝试随机生成RGB中的3个组件(xxx,xxx,xxx),以使组件的总和大于X(X取决于您想要的对比度),并转换为HSB。

HSV和HSL是与感知无关的破碎模型。您应该在YUV空间(也称为YCbCr)中生成颜色,其中强度(Y)为通道不仅仅是R+G+B,而是对红色、绿色和蓝色的感知强度进行建模。一个好的起点是尝试至少200个随机Y值,以及-50和50之间的随机U和V值。

我会尝试一下,但我开始怀疑这三者之间存在交互作用nums@Yar:嗯,com的范围电脑屏幕确实有限,如果我理解正确的话:我真的不知道如何缩放这三个值以获得更多可用的颜色-这个简单的破解足以满足我有限的需求。只是尝试了一下,它实际上看起来并不差。我会坚持要一个更有趣的答案,但它非常好,谢谢。谢谢,我会尝试的[se“随机”掷骰子]你的权利,谢谢你的更正。我更正了文本。没问题。我想尝试一下你的解决方案——使用RGB而不是HSV——如果可行,我会投票支持并接受它。我会很快回到这里。问题是200单位的绿色比200单位的蓝色亮得多。这就是为什么我认为你需要像YUV的lum这样的模型inosity而不是伪造的“亮度=R+G+B”。如果您想跳过繁重的读数,只需定义Y=(3*R+4*G+1*B)/8,并确保Y至少为200左右。