Class: Prawn::SVG::PatternRenderer
- Inherits:
-
Object
- Object
- Prawn::SVG::PatternRenderer
- Includes:
- PDFMatrix
- Defined in:
- lib/prawn/svg/pattern_renderer.rb
Instance Method Summary collapse
- #draw ⇒ Object
-
#initialize(prawn, draw_type, renderer, tile_x:, tile_y:, tile_width:, tile_height:, transform:, calls:) ⇒ PatternRenderer
constructor
A new instance of PatternRenderer.
Methods included from PDFMatrix
#load_matrix, #matrix_for_pdf, #rotation_matrix, #scale_matrix, #translation_matrix
Constructor Details
#initialize(prawn, draw_type, renderer, tile_x:, tile_y:, tile_width:, tile_height:, transform:, calls:) ⇒ PatternRenderer
Returns a new instance of PatternRenderer.
4 5 6 7 8 9 10 11 12 13 14 |
# File 'lib/prawn/svg/pattern_renderer.rb', line 4 def initialize(prawn, draw_type, renderer, tile_x:, tile_y:, tile_width:, tile_height:, transform:, calls:) @prawn = prawn @draw_type = draw_type @renderer = renderer @tile_x = tile_x @tile_y = tile_y @tile_width = tile_width @tile_height = tile_height @transform = transform @calls = calls end |
Instance Method Details
#draw ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/prawn/svg/pattern_renderer.rb', line 16 def draw key = Prawn::SVG::GradientRenderer.next_key pattern_ref = create_tiling_pattern(key) prawn.page.resources[:Pattern] ||= {} prawn.page.resources[:Pattern]["PSVG-Pattern-#{key}"] = pattern_ref prawn.send(:set_color_space, draw_type, :Pattern) draw_operator = draw_type == :fill ? 'scn' : 'SCN' prawn.renderer.add_content("/PSVG-Pattern-#{key} #{draw_operator}") end |