Sha256: 698261c59a4060596bd484aded46c71ffe72276737491bb7939057431f903039

Contents?: true

Size: 651 Bytes

Versions: 2

Compression:

Stored size: 651 Bytes

Contents

module Text2svg
  class Option < Struct.new(
    :font,
    :text_align,
    :encoding,
    :bold,
    :italic,
    :attribute,
    :char_size,
    :scale,
  )
    DEFAULTS = [
      nil,             # font
      :left,           # text_align
      Encoding::UTF_8, # encoding
      false,           # bold
      false,           # italic
      nil,             # attribute
      "0,0,3000,3000", # char_size
      1,
    ]

    class << self
      def from_hash(h)
        o = new(*DEFAULTS)
        h.to_h.each do |k, v|
          o[k.to_sym] = v
        end
        o
      end

      def default
        new(*DEFAULTS)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
text2svg-0.5.1 lib/text2svg/option.rb
text2svg-0.5.0 lib/text2svg/option.rb