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)
12381 users tagging and storing useful source code snippets
Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world
def invert_color(color) color.gsub!(/^#/, '') sprintf("%X", color.hex ^ 0xFFFFFF) end
invert_color('#c0c0c0') #=> "3F3F3F"
You need to create an account or log in to post comments to this site.
color.gsub!(/^#/, '')
color += color if color.length == 3
sprintf("%X", color.hex ^ 0xFFFFFF)
end
that should take care of the 3 letter hex cases...