Module: Prawn::Graphics::Dash

Included in:
Prawn::Graphics
Defined in:
lib/prawn/graphics/dash.rb

Instance Method Summary collapse

Instance Method Details

#dash(length = nil, options = {}) ⇒ Object Also known as: dash=

Sets the dash pattern for stroked lines and curves

length is the length of the dash. If options is not present,
or options[:space] is nil, then length is also the length of
the space between dashes

options may contain :space and :phase
   :space is the space between the dashes
   :phase is where in the cycle to begin dashing. For
          example, a phase of 0 starts at the beginning of
          the dash; whereas, if the phase is equal to the
          length of the dash, then stroking will begin at
          the beginning of the space. Default is 0

integers or floats may be used for length and the options

dash units are in PDF points ( 1/72 in )


31
32
33
34
35
36
37
38
39
# File 'lib/prawn/graphics/dash.rb', line 31

def dash(length=nil, options={})
  return @dash || undash_hash if length.nil?

  @dash = { :dash  => length, 
            :space => options[:space] || length, 
            :phase => options[:phase] || 0 }

  write_stroke_dash
end

#dashed?Boolean

Returns true iff the stroke is dashed

Returns:

  • (Boolean)


50
51
52
# File 'lib/prawn/graphics/dash.rb', line 50

def dashed?
  dash != undash_hash
end

#undashObject

Restores solid stroking



44
45
46
47
# File 'lib/prawn/graphics/dash.rb', line 44

def undash
  @dash = undash_hash
  write_stroke_dash
end