Module: PrawnComponents::Components::CodeBlock

Defined in:
lib/prawn_components/components/code_block.rb

Instance Method Summary collapse

Instance Method Details

#code_block(value, language) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/prawn_components/components/code_block.rb', line 4

def code_block(value, language)
  formatter = Rouge::Formatters::Prawn.new
  lexer = get_lexer(language)

  default_leading(5)
  span(540) do
    move_down(5)
    span(520, position: 10) do
      move_down(10)
      font 'Consolas' do
        formatted_text(formatter.format(lexer.new.lex(value)))
      end
    end

    move_down(30)
  end

  default_leading(5)
end