Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # 0 = opaque (Magick::OpaqueOpacity) 1= transparent (Magick::TransparentOpacity)
- def watermark(opacity = 0.99, size = 'm')
- manipulate! do |img|
- logo = Magick::Image.read("#{Rails.root}/app/assets/images/watermark#{size}.png").first
- #logo.alpha(Magick::ActivateAlphaChannel)
- #pixels = logo.get_pixels(0, 0, logo.columns,logo.rows)
- #for pixel in pixels
- # pixel.opacity = opacity
- #end
- white_canvas = Magick::Image.new(logo.columns, logo.rows) { self.background_color = "white" }
- logo.opacity = 0.5
- logo_opacity = logo.composite(white_canvas, Magick::NorthWestGravity, 0, 0, Magick::MultiplyCompositeOp)
- # logo_opacity = Magick::Image.new(logo.columns, logo.rows) { self.background_color = "white" }
- #logo_opacity.store_pixels(0, 0, logo.columns, logo.rows, pixels)
- #logo.opacity = (1 - opacity.to_f) * Magick::QuantumRange
- #img.alpha(Magick::ActivateAlphaChannel)
- #img = img.dissolve(logo, 1.0, opacity, Magick::NorthWestGravity, 0, 0)
- img = img.composite(logo_opacity, Magick::NorthWestGravity, 0, 0, Magick::MultiplyCompositeOp)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment