class Inch::Badge::Image::SVG

Public Instance Methods

save() click to toggle source
# File lib/inch/badge/image/svg.rb, line 7
def save
  add_n_grade! if empty_badge?

  template_content = File.read( Config.image_path(badge_template) )
  renderer = ERB.new(template_content)
  output = renderer.result(binding)

  File.open(@filename, 'w') {|f| f.write(output) }
end

Private Instance Methods

add_n_grade!() click to toggle source
# File lib/inch/badge/image/svg.rb, line 19
def add_n_grade!
  @grades << GradeSection.new('N', '#9B9B9B', 100, 100)
end
badge_template() click to toggle source
# File lib/inch/badge/image/svg.rb, line 23
def badge_template
  "badge-#{style}.svg.erb"
end
empty_badge?() click to toggle source
# File lib/inch/badge/image/svg.rb, line 27
def empty_badge?
  @numbers == [0,0,0,0]
end
load_image(filename) click to toggle source
# File lib/inch/badge/image/svg.rb, line 31
def load_image(filename)
  @cache ||= {}
  @cache[filename] ||= ChunkyPNG::Image.from_file(filename)
  @cache[filename]
end