Ruby,生成一个随机的hex颜色

如何用ruby生成一个随机的hex颜色?

这里有一个方法:

colour = "%06x" % (rand * 0xffffff) 
 SecureRandom.hex(3) #=> "fef912" 

SecureRandom模块是Ruby标准库的一部分

 require 'securerandom' 

它在Rails中是自动加载的,但是如果你使用的是Rails 3.0或更低版本,你需要使用

 ActiveSupport::SecureRandom.hex(3) 

您可以独立生成每个组件:

 r = rand(255).to_s(16) g = rand(255).to_s(16) b = rand(255).to_s(16) r, g, b = [r, g, b].map { |s| if s.size == 1 then '0' + s else s end } color = r + g + b # => eg "09f5ab"