def parse_font_options(options={})
      return if (options.keys & [:fg_color, :sz, :b, :i, :u, :strike, :outline, :shadow, :charset, :family, :font_name]).empty?
      fonts.first.instance_values.each do |key, value|
        # Thanks for that 1.8.7 - cant do a simple merge...
        options[key.to_sym] = value unless options.keys.include?(key.to_sym)
      end
      font = Font.new(options)
      font.color = Color.new(:rgb => options[:fg_color]) if options[:fg_color]
      font.name = options[:font_name] if options[:font_name]
      options[:type] == :dxf ? font : fonts << font
    end
def parse_font_options(options={})
      return if (options.keys & [:fg_color, :sz, :b, :i, :u, :strike, :outline, :shadow, :charset, :family, :font_name]).empty?
      fonts.first.instance_values.each do |key, value|
        # Thanks for that 1.8.7 - cant do a simple merge...
        options[key.to_sym] = value unless options.keys.include?(key.to_sym)
      end
      font = Font.new(options)
      font.color = Color.new(:rgb => options[:fg_color]) if options[:fg_color]
      font.name = options[:font_name] if options[:font_name]
      options[:type] == :dxf ? font : fonts << font
    end
parses add_style options for fonts. If the options hash contains :type => :dxf we return a new Font object.
 if not, we return the index of the newly created font object in the styles.fonts collection.
 @note noop if none of the options described here are set on the options parameter.
 @option options [Symbol] type The type of style object we are working with (dxf or xf)
 @option options [String] fg_color The text color
 @option options [Integer] sz The text size
 @option options [Boolean] b Indicates if the text should be bold
 @option options [Boolean] i Indicates if the text should be italicised
 @option options [Boolean] u Indicates if the text should be underlined
 @option options [Boolean] strike Indicates if the text should be rendered with a strikethrough
 @option options [Boolean] outline Indicates if the text should be rendered with a shadow
 @option options [Integer] charset The character set to use.
 @option options [Integer] family The font family to use.
 @option options [String] font_name The name of the font to use
 @return [Font|Integer]