Class: PDF::Core::GraphicState

Inherits:
Object
  • Object
show all
Defined in:
lib/pdf/core/graphics_state.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(previous_state = nil) ⇒ GraphicState

Returns a new instance of GraphicState.



49
50
51
52
53
54
55
56
57
# File 'lib/pdf/core/graphics_state.rb', line 49

def initialize(previous_state = nil)
  @color_space = previous_state ? previous_state.color_space.dup : {}
  @fill_color = previous_state ? previous_state.fill_color : "000000"
  @stroke_color = previous_state ? previous_state.stroke_color : "000000"
  @dash = previous_state ? previous_state.dash : { :dash => nil, :space => nil, :phase => 0 }
  @cap_style = previous_state ? previous_state.cap_style : :butt
  @join_style = previous_state ? previous_state.join_style : :miter
  @line_width = previous_state ? previous_state.line_width : 1
end

Instance Attribute Details

#cap_styleObject

Returns the value of attribute cap_style.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def cap_style
  @cap_style
end

#color_spaceObject

Returns the value of attribute color_space.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def color_space
  @color_space
end

#dashObject

Returns the value of attribute dash.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def dash
  @dash
end

#fill_colorObject

Returns the value of attribute fill_color.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def fill_color
  @fill_color
end

#join_styleObject

Returns the value of attribute join_style.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def join_style
  @join_style
end

#line_widthObject

Returns the value of attribute line_width.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def line_width
  @line_width
end

#stroke_colorObject

Returns the value of attribute stroke_color.



47
48
49
# File 'lib/pdf/core/graphics_state.rb', line 47

def stroke_color
  @stroke_color
end

Instance Method Details

#dash_settingObject



59
60
61
62
63
64
65
# File 'lib/pdf/core/graphics_state.rb', line 59

def dash_setting
  if @dash[:dash].kind_of?(Array)
    "[#{@dash[:dash].join(' ')}] #{@dash[:phase]} d"
  else
    "[#{@dash[:dash]} #{@dash[:space]}] #{@dash[:phase]} d"
  end
end