def initialize opts={}
@font = Font.new client("Arial", 'UTF-8'), :family => :swiss
@number_format = client 'GENERAL', 'UTF-8'
@rotation = 0
@pattern = 0
@bottom_color = :builtin_black
@top_color = :builtin_black
@left_color = :builtin_black
@right_color = :builtin_black
@diagonal_color = :builtin_black
@pattern_fg_color = :border
@pattern_bg_color = :pattern_bg
@regexes = {
:date => Regexp.new(client("[YMD]", 'UTF-8')),
:date_or_time => Regexp.new(client("[hmsYMD]", 'UTF-8')),
:datetime => Regexp.new(client("([YMD].*[HS])|([HS].*[YMD])", 'UTF-8')),
:time => Regexp.new(client("[hms]", 'UTF-8'))
}
@used_merge = 0
opts.each do |key, val|
writer = "#{key}="
if @font.respond_to? writer
@font.send writer, val
else
self.send writer, val
end
end
yield self if block_given?
end