In addition to the methods listed above, this class also implements the styles method, the shape methods and the transform methods.
RVG::Pattern.new(width=0, height=0, x=0, y=0) [ { |pattern| drawing method calls } ] -> aPattern
Creates a pattern that can be used with the :fill
and :stroke
styles.
Define the pattern in the associated block. The pattern can be composed of shapes, text, raster images, groups, and RVG objects. You can use the use method to include graphic objects in the pattern.
+m*width
and y+n*height
offsets.pattern.g [{|grp| ...}] -> aGroup
Calls RVG::Group.new to construct a group and adds it to the pattern. Yields to a block if one is present, passing the new group as an argument.
Returns the new group, so RVG::Group
methods
can be chained to this method.
pattern.image(raster_image, width=nil, height=nil, x=0, y=0) -> anImage
Calls RVG::Image.new to construct an image and adds it to the pattern.
Returns the new image, so RVG::Image
methods
can be chained to this method.
pattern.preserve_aspect_ratio(align, meet_or_slice='meet') [{|self| ...}] -> self
If you use the viewbox method and
the user coordinate system does not scale uniformly to the
default coordinate system,
use the preserve_aspect_ratio
method to specify
whether or not the content is stretched to fit. If not, you can
specify how to fit the content into the space.
Preserve_aspect_ratio
yields to a block if one
is present, passing self as an
argument.
meet_or_slice
argument
is 'meet' or 'slice', this argument controls the placement
of the content within the viewport. The align
argument is the concatenation of an x-aligment and
a y-alignment. The values are shown in these
lists:
See the RVG class example.
Self, so other RVG::Pattern
methods can be chained to this method.
pattern.rvg(width, height, x=0, y=0) [{|new_rvg| ...}] -> aPattern
This method constructs a new RVG object and adds it to the
pattern. Each nested RVG object can use the
viewbox method to define its own
coordinate system. The rvg
method yields to a
block, passing the nested RVG object as an argument. Within the
block, any drawing objects added to the nested RVG object are
rendered within the nested RVG object's viewport.
See the example for preserve_aspect_ratio
in class RVG
.
The RVG
object, so other RVG
methods can be chained to this method.
pattern.text(x=0, y=0, text=nil) [{|aText| ...}] -> aText
Calls RVG::Text.new to construct a text object and adds it to the pattern. Yields to a block if one is present, passing the new text object as an argument.
The RVG::Text
object, so other
RVG::Text
methods can be chained to this
method.
pattern.use(obj, x=0, y=0, width=nil, height=nil) -> aUse
Calls RVG::Use.new to
constructs a use
object and adds it to the pattern.
When the referenced argument is an RVG object,
width and height can be used to specify the width and height
of the viewport. If present and non-nil, these arguments
override any width and height specified when the RVG object was
created. You must specify the viewport size either when
creating the RVG object or when referencing it with
use
.
See RVG::Use.new
The RVG::Use
object, so other
RVG::Use
methods can be chained to this
method.
pattern.viewbox(min_x, min_y, width, height) [{|self| ...}] -> rvg
The area of the pattern is called the viewport.
By default the origin of the coordinate system for an pattern is (0,0). The user coordinates are pixels and the width
and height are established by the width and height
arguments to RVG::Pattern.new
.
Use the viewbox
method to superimpose a user
coordinate system on the viewport. The viewbox
method lets you set up a coordinate system using the units of
your choice.
The viewbox
method yields to a block if one is
present, passing self
as an argument.
See the example for the RVG
class.
Self, so other RVG::Pattern
methods may be chained to viewbox
.