Sha256: 019c752202261a6400d8697cfa25f897cbc24bf39e8a798bc9d8fe5e6b0e4c64
Contents?: true
Size: 1.78 KB
Versions: 22
Compression:
Stored size: 1.78 KB
Contents
#-- # $Id: paint.rb,v 1.6 2009/02/28 23:52:28 rmagick Exp $ # Copyright (C) 2009 Timothy P. Hunter #++ # Defines paint server classes. # Eventually this will include gradients. module Magick class RVG class Pattern include StructureConstructors include UseConstructors include ShapeConstructors include TextConstructors include ImageConstructors include Stretchable include Duplicatable include Stylable # Return upper-left corner, width, height of viewport in user coordinates. # Usually these are the values specified when the Pattern object is # created, but they can be changed by a call to the viewbox method. attr_reader :x, :y, :width, :height # Create a pattern that can be used with the :fill or :stroke styles. # The +width+ and +height+ arguments define the viewport. # The pattern will be repeated at <tt>x+m*width</tt> and <tt>y+n*height</tt> # offsets. # # Define the pattern in the block. # The pattern can be composed of shapes (rectangle, circles, etc.), text, # raster images and container objects. You can include graphic objects by # referring to them with #use. def initialize(width = 0, height = 0, x = 0, y = 0) super() @width, @height, @x, @y = Magick::RVG.convert_to_float(width, height, x, y) @content = Content.new yield(self) if block_given? end # @private def add_primitives(gc, style) name = __id__.to_s gc.pattern(name, @x, @y, @width, @height) do add_viewbox_primitives(@width, @height, gc) @content.each { |element| element.add_primitives(gc) } end gc.__send__(style, name) end end # class Pattern end # class RVG end # module Magick
Version data entries
22 entries across 22 versions & 1 rubygems