module AwesomeMapMarker
##########################################
AwesomeMapMarker Version 0.1.0 2019-02-04 Author Kazuomatz
##########################################
Constants
- VERSION
Public Class Methods
generate(type: :fas, name: 'fa-map-marker-alt', size: 128, fill_color: '
click to toggle source
# File lib/awesome_map_marker.rb, line 17 def self.generate(type: :fas, name: 'fa-map-marker-alt', size: 128, fill_color: '#e45340') size = 1024 if size > 1024 return nil if size <= 0 font_image = FontAwesome.generate(type: type, name: name, size: size * 0.6) return nil if font_image.nil? tmp_file = Tempfile.new(%w[icon .png]) tmp_file.close MiniMagick::Tool::Convert.new do |magick| magick << File.expand_path('../app/assets/images/icon-base.png', __dir__) magick.resize("#{size}x#{size}") magick.fuzz '100%' magick.fill fill_color magick.opaque '#0000FF' magick << tmp_file.path end base_image = MiniMagick::Image.open(tmp_file.path) tmp_file.unlink base_image.composite(font_image) do |composite| composite.compose 'over' composite.gravity 'center' composite.geometry "+0-#{size * 0.04}" end end