Sha256: 2654d314a9bf2425d61756864193bc6bda9757115ffd5b9dedb917e0332cb3bb
Contents?: true
Size: 1.23 KB
Versions: 4
Compression:
Stored size: 1.23 KB
Contents
#!/usr/bin/env ruby -w require 'rmagick' # This example demonstrates the mask attribute. The mask image must # be the same size as the image being masked. Since this mask image does # not have an alpha channel, the intensity of each pixel is used to define the # mask. White pixels are more intense than black pixels, so the area of the # image masked by white pixels will remain unchanged, while the area of the # image masked by black pixels is affected by any transformations. # In this example the mask is simply the words "Flower Hat" in black text # positioned near the bottom of the white clip mask image. img = Magick::Image.read('images/Flower_Hat.jpg').first q = Magick::Image.new(img.columns, img.rows) gc = Magick::Draw.new gc.annotate(q, 0, 0, 0, 0, 'Flower Hat') do gc.gravity = Magick::SouthGravity gc.pointsize = 36 gc.font_weight = Magick::BoldWeight end # Set the matte attribute to false, indicating the absence of an alpha channel # in the mask image. Assign the mask image to the mask= attribute of the image # being masked. q.alpha(Magick::DeactivateAlphaChannel) img.mask q # Use the #level method to darken the image under the black part of the mask. img = img.level(0, Magick::QuantumRange, 0.50) img.write('mask.jpg')
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
rmagick-4.1.0.rc2 | doc/ex/mask.rb |
rmagick-4.1.0.rc1 | doc/ex/mask.rb |
rmagick-4.0.0 | doc/ex/mask.rb |
rmagick-3.2.0 | doc/ex/mask.rb |