Module: Prawn::Markup::Processor::Text

Included in:
Prawn::Markup::Processor
Defined in:
lib/prawn/markup/processor/text.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.prepended(base) ⇒ Object



6
7
8
9
10
11
# File 'lib/prawn/markup/processor/text.rb', line 6

def self.prepended(base)
  base.known_elements.push(
    'a', 'b', 'strong', 'i', 'em', 'u', 'strikethrough', 'strike', 's', 'del',
    'sub', 'sup', 'color', 'font'
  )
end

Instance Method Details

#end_aObject Also known as: end_link



18
19
20
# File 'lib/prawn/markup/processor/text.rb', line 18

def end_a
  append_text('</link>')
end

#end_bObject Also known as: end_strong



28
29
30
# File 'lib/prawn/markup/processor/text.rb', line 28

def end_b
  append_text('</b>')
end

#end_colorObject



91
92
93
# File 'lib/prawn/markup/processor/text.rb', line 91

def end_color
  append_text('</color>')
end

#end_fontObject



103
104
105
# File 'lib/prawn/markup/processor/text.rb', line 103

def end_font
  append_text('</font>')
end

#end_iObject Also known as: end_em



38
39
40
# File 'lib/prawn/markup/processor/text.rb', line 38

def end_i
  append_text('</i>')
end

#end_strikethroughObject Also known as: end_s, end_strike, end_del



58
59
60
# File 'lib/prawn/markup/processor/text.rb', line 58

def end_strikethrough
  append_text('</strikethrough>')
end

#end_subObject



69
70
71
# File 'lib/prawn/markup/processor/text.rb', line 69

def end_sub
  append_text('</sub>')
end

#end_supObject



77
78
79
# File 'lib/prawn/markup/processor/text.rb', line 77

def end_sup
  append_text('</sup>')
end

#end_uObject



47
48
49
# File 'lib/prawn/markup/processor/text.rb', line 47

def end_u
  append_text('</u>')
end

#start_aObject Also known as: start_link



13
14
15
# File 'lib/prawn/markup/processor/text.rb', line 13

def start_a
  append_text("<link href=\"#{current_attrs['href']}\">")
end

#start_bObject Also known as: start_strong



23
24
25
# File 'lib/prawn/markup/processor/text.rb', line 23

def start_b
  append_text('<b>')
end

#start_colorObject



81
82
83
84
85
86
87
88
89
# File 'lib/prawn/markup/processor/text.rb', line 81

def start_color
  rgb, c, m, y, k = current_attrs.values_at('rgb', 'c', 'm', 'y', 'k')

  if [c, m, y, k].all?
    append_text("<color c=\"#{c}\" m=\"#{m}\" y=\"#{y}\" k=\"#{k}\">")
  else
    append_text("<color rgb=\"#{rgb}\">")
  end
end

#start_fontObject



95
96
97
98
99
100
101
# File 'lib/prawn/markup/processor/text.rb', line 95

def start_font
  font_attrs = current_attrs
               .slice('size', 'name', 'character_spacing')
               .reduce('') { |acc, (key, val)| "#{acc} #{key}=\"#{val}\"" }

  append_text("<font #{font_attrs}>")
end

#start_iObject Also known as: start_em



33
34
35
# File 'lib/prawn/markup/processor/text.rb', line 33

def start_i
  append_text('<i>')
end

#start_strikethroughObject Also known as: start_s, start_strike, start_del



51
52
53
# File 'lib/prawn/markup/processor/text.rb', line 51

def start_strikethrough
  append_text('<strikethrough>')
end

#start_subObject



65
66
67
# File 'lib/prawn/markup/processor/text.rb', line 65

def start_sub
  append_text('<sub>')
end

#start_supObject



73
74
75
# File 'lib/prawn/markup/processor/text.rb', line 73

def start_sup
  append_text('<sup>')
end

#start_uObject



43
44
45
# File 'lib/prawn/markup/processor/text.rb', line 43

def start_u
  append_text('<u>')
end