class TrianglePattern::SvgImage
Attributes
height[R]
svg_string[R]
width[R]
Public Class Methods
as_comment(str)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 77 def self.as_comment(str) "<!-- #{str} -->" end
new()
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 13 def initialize @width = 100 @height = 100 @svg_string = '' end
Public Instance Methods
<<(svg)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 47 def <<(svg) svg_string << svg.body end
<=>(other)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 81 def <=>(other) to_s <=> other.to_s end
body()
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 43 def body svg_string end
group(elements, args = {})
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 55 def group(elements, args = {}) svg_string << %(<g #{write_args(args)}>) elements.each { |e| eval e } svg_string << %(</g>) end
height=(height)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 23 def height=(height) @height = height.floor end
include?(string)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 27 def include?(string) body.include? string end
path(str, args = {})
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 51 def path(str, args = {}) svg_string << %(<path d="#{str}" #{write_args(args)} />) end
svg_closer()
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 35 def svg_closer '</svg>' end
svg_header()
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 31 def svg_header %(<svg xmlns="http://www.w3.org/2000/svg" width="#{@width}" height="#{@height}">) end
to_s()
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 39 def to_s svg_header + svg_string + svg_closer end
width=(width)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 19 def width=(width) @width = width.floor end
write_args(args)
click to toggle source
# File lib/triangle_pattern/svg_image.rb, line 61 def write_args(args) str = '' args.each do |key, value| if value.is_a?(Hash) str << %(#{key}=") value.each do |k, v| str << %(#{k}:#{v};) end str << %(" ) else str << %(#{key}="#{value}" ) end end str end