1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
require 'rmagick'
img = Magick::Image.new(40, 40) { |info| info.background_color = 'lightcyan2' }
# The view is 400 pixels square, starting
# column 10, row 5 from the top of the image.
img.view(10, 5, 20, 20) do |view|
# Set all the pixels in the view to green.
view[][] = Magick::Pixel.new(0, Magick::QuantumRange)
# Change the top and bottom rows to red.
view[0][] = 'red'
view[-1, 1][] = 'red'
# Set 6 pixels to black.
view[[13, 15]][[12, 14, 16]] = 'black'
# Set 1 pixel to yellow.
view[5][7] = 'yellow'
# Change the green channel of all the
# pixels on row 8.
view[8][].green = Magick::QuantumRange / 2
# Change the blue channel of 8 pixels
# on column 10.
view[4, 8][10].blue = Magick::QuantumRange
end
img.scale(5).write('viewex.gif')
exit
|