Get the inverse of a hex color in Ruby
def invert_color(color) color.gsub!(/^#/, '') sprintf("%X", color.hex ^ 0xFFFFFF) end
Example:
invert_color('#c0c0c0') #=> "3F3F3F"
Limitations:
Doesn't handle named colors or 3 digit colors (i.e. #FFF == #FFFFFF)