Module: Prawn::Text

Defined in:
lib/prawn/text.rb

Overview

:nodoc:

Instance Method Summary collapse

Instance Method Details

#text_rendering_mode(mode = nil) ⇒ Object



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

def text_rendering_mode(mode = nil)
  return (defined?(@text_rendering_mode) && @text_rendering_mode || :fill) if mode.nil?
  unless MODES.key?(mode)
    fail ArgumentError, "mode must be between one of #{MODES.keys.join(', ')} (#{mode})"
  end
  original_mode = self.text_rendering_mode
  if original_mode == :unknown
    original_mode = :fill
    add_content "\n#{MODES[:fill]} Tr"
  end

  if original_mode == mode
    yield
  else
    @text_rendering_mode = mode
    add_content "\n#{MODES[mode]} Tr"
    yield
    add_content "\n#{MODES[original_mode]} Tr"
    @text_rendering_mode = original_mode
  end
end