metasploitable3/resources/flags/linux_flags/joker_flag/convert.rb

26 lines
444 B
Ruby
Raw Normal View History

require 'chunky_png'
include ChunkyPNG::Color
# https://gist.github.com/jeffkreeftmeijer/923084
module ChunkyPNG::Color
def invert(value)
rgb(MAX - r(value), MAX - g(value), MAX - b(value))
end
end
source = ARGV.shift
dest = ARGV.shift
# joker-black.png
img = ChunkyPNG::Image.from_file(source)
img.pixels.map! do |p|
if ChunkyPNG::Color.fully_transparent?(p)
p
else
ChunkyPNG::Color.invert(p)
end
end
img.save(dest)