29
graphics/fill_and_stroke.rb
There are two drawing primitives in Prawn: fill and stroke.
These are the methods that actually draw stuff on the document. All the other drawing shapes like
rectangle, circle or line_to define drawing paths. These paths need to be either stroked or
filled to gain form on the document.
Calling these methods without a block will act on the drawing path that has been defined prior to
the call.
Calling with a block will act on the drawing path set within the block.
Most of the methods which define drawing paths have methods of the same name starting with
stroke_ and fill_ which create the drawing path and then stroke or fill it.
stroke_axis
# No block
line [0, 200], [100, 150]
stroke
rectangle [0, 100], 100, 100
fill
# With block
stroke { line [200, 200], [300, 150] }
fill { rectangle [200, 100], 100, 100 }
# Method hook
stroke_line [400, 200], [500, 150]
fill_rectangle [400, 100], 100, 100
100
200
300
400
500
100
200