Module: Magick::RVG::StructureConstructors

Included in:
Embellishable, Pattern
Defined in:
lib/rvg/embellishable.rb

Overview

Methods that construct container objects within a container

Instance Method Summary collapse

Instance Method Details

#g(&block) ⇒ Object

Defines a group.

This method constructs a new Group container object. The styles and transforms specified on this object will be used by objects contained within, unless overridden by an inner container or the contained object itself. Define grouped elements by calling RVG::Embellishable methods within the associated block.



353
354
355
356
357
# File 'lib/rvg/embellishable.rb', line 353

def g(&block)
    group = Group.new(&block)
    @content << group
    group
end

#rvg(cols, rows, x = 0, y = 0, &block) ⇒ Object

Establishes a new viewport. [x, y] is the coordinate of the upper-left corner within the containing viewport. This is a container method. Styles and transforms specified on this object will be used by objects contained within, unless overridden by an inner container or the contained object itself.



331
332
333
334
335
336
337
338
339
340
341
342
# File 'lib/rvg/embellishable.rb', line 331

def rvg(cols, rows, x=0, y=0, &block)
    rvg = Magick::RVG.new(cols, rows, &block)
    begin
        x, y = Float(x), Float(y)
    rescue ArgumentError
        args = [cols, rows, x, y]
        raise ArgumentError, "at least one argument is not convertable to Float (got #{args.collect {|a| a.class}.join(', ')})"
    end
    rvg.corner(x, y)
    @content << rvg
    rvg
end