Method: PREP::Core::Label#initialize
- Defined in:
- lib/core/label.rb
#initialize(identifier, values = { }) ⇒ Label
Returns a new instance of Label.
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/core/label.rb', line 35 def initialize(identifier, values = { }) values = @@default_values.merge(key_string_to_symbol(values)) super(identifier, values[:layer]) @region = Region.new(values[:region][:x].mm2pixcel, values[:region][:y].mm2pixcel, values[:region][:width].mm2pixcel, values[:region][:height].mm2pixcel) if values[:label].nil? raise "Label string cannot be blank for \"#{identifier}\"" else @label = values[:label] end if ALIGNS.keys.include?(values[:align].to_sym) @align = ALIGNS[values[:align].to_sym] else raise "Unknown label alignment option \"#{values[:align]}\"." end if values[:font].nil? || values[:font] == "" raise "Lable font must be specified." else @font = values[:font] end @color = Color.new(values[:color][:red], values[:color][:green], values[:color][:blue]) if values[:size].nil? || values[:size] == "" raise "Label size must be specified." else @size = values[:size] end @expand = values[:expand] end |