prawn-icon 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,56 @@
1
+ Prawn/Icon is copyrighted free software produced by Jesse Doyle along with
2
+ community contributions. See git log for authorship information.
3
+
4
+ Licensing terms follow:
5
+
6
+ You can redistribute Prawn/Icon and/or modify it under either the terms of the GPLv2
7
+ or GPLv3 (see GPLv2 and GPLv3 files), or the conditions below:
8
+
9
+ 1. You may make and give away verbatim copies of the source form of the
10
+ software without restriction, provided that you duplicate all of the
11
+ original copyright notices and associated disclaimers.
12
+
13
+ 2. You may modify your copy of the software in any way, provided that
14
+ you do at least ONE of the following:
15
+
16
+ a) place your modifications in the Public Domain or otherwise
17
+ make them Freely Available, such as by posting said
18
+ modifications to Usenet or an equivalent medium, or by allowing
19
+ the author to include your modifications in the software.
20
+
21
+ b) use the modified software only within your corporation or
22
+ organization.
23
+
24
+ c) rename any non-standard executables so the names do not conflict
25
+ with standard executables, which must also be provided.
26
+
27
+ d) make other distribution arrangements with the author.
28
+
29
+ 3. You may distribute the software in object code or executable
30
+ form, provided that you do at least ONE of the following:
31
+
32
+ a) distribute the executables and library files of the software,
33
+ together with instructions (in the manual page or equivalent)
34
+ on where to get the original distribution.
35
+
36
+ b) accompany the distribution with the machine-readable source of
37
+ the software.
38
+
39
+ c) give non-standard executables non-standard names, with
40
+ instructions on where to get the original software distribution.
41
+
42
+ d) make other distribution arrangements with the author.
43
+
44
+ 4. You may modify and include the part of the software into any other
45
+ software (possibly commercial).
46
+
47
+ 5. The scripts and library files supplied as input to or produced as
48
+ output from the software do not automatically fall under the
49
+ copyright of the software, but belong to whomever generated them,
50
+ and may be sold commercially, and may be aggregated with this
51
+ software.
52
+
53
+ 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
54
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
55
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
56
+ PURPOSE.
data/Rakefile ADDED
@@ -0,0 +1,30 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Copyright October 2014, Jesse Doyle. All rights reserved.
4
+ #
5
+ # This is free software. Please see the LICENSE and COPYING files for details.
6
+
7
+ require 'bundler'
8
+ Bundler.setup
9
+
10
+ require 'rake'
11
+ require 'rspec/core/rake_task'
12
+
13
+ task :default => [:spec]
14
+
15
+ desc 'Run all rspec files'
16
+ RSpec::Core::RakeTask.new('spec') do |c|
17
+ c.rspec_opts = '-t ~unresolved'
18
+ end
19
+
20
+ desc 'Generate the legend documents for all icon fonts.'
21
+ task :legend do
22
+ example = File.join(File.dirname(__FILE__), 'examples', '*.rb')
23
+ files = Dir[example]
24
+ files.reject! { |f| File.basename(f) == 'example_helper.rb' }
25
+ files.each do |file|
26
+ puts "Generating from: #{file}"
27
+ require file
28
+ end
29
+ puts 'All Done!'
30
+ end
@@ -0,0 +1,105 @@
1
+ # encoding: utf-8
2
+ #
3
+ # example_helper.rb: Helper used to generate icon font legends.
4
+ #
5
+ # Copyright October 2014, Jesse Doyle. All rights reserved.
6
+ #
7
+ # This is free software. Please see the LICENSE and COPYING files for details.
8
+
9
+ # All example code may be executed by calling `rake legend`
10
+
11
+ ICONS_PER_PAGE = 72
12
+
13
+ def icon_keys(pdf, specifier)
14
+ keys = Prawn::Icon::FontData.load(pdf, specifier).keys
15
+ keys.each_slice(6).to_a
16
+ end
17
+
18
+ def page_header(text, link)
19
+ grid([0, 0], [1, 5]).bounding_box do
20
+ move_down 10
21
+ text 'Prawn/Icon', size: 50
22
+
23
+ if block_given?
24
+ yield
25
+ else
26
+ text "#{text}: <color rgb='1B83BE'>" +
27
+ "<link href='#{link}'>#{link}</link></color>",
28
+ inline_format: true,
29
+ size: 12
30
+ end
31
+ end
32
+ end
33
+
34
+ def number_of_pages(pdf, specifier)
35
+ keys = Prawn::Icon::FontData.load(pdf, specifier).keys
36
+ num_icons = keys.size
37
+
38
+ # First page can only fit 60 icons
39
+ num_icons -= 60
40
+
41
+ # (First page) + (remaining pages)
42
+ 1 + (num_icons/ICONS_PER_PAGE).ceil
43
+ end
44
+
45
+ def legend_text(key)
46
+ h = cursor - bounds.bottom
47
+ opts = {
48
+ width: bounds.width,
49
+ height: h
50
+ }
51
+
52
+ bounding_box [bounds.left, cursor], opts do
53
+ text key,
54
+ overflow: :shrink_to_fit,
55
+ align: :center,
56
+ valign: :bottom,
57
+ width: bounds.width,
58
+ height: bounds.height,
59
+ size: 12
60
+ end
61
+ end
62
+
63
+ def first_page_icons(icons)
64
+ icons[0..9].each_with_index do |group, i|
65
+ group.each_with_index do |icon, j|
66
+ grid(i+2, j).bounding_box do
67
+
68
+ if block_given?
69
+ yield icon
70
+ else
71
+ icon icon, size: 20, align: :center
72
+ end
73
+
74
+ move_down 4
75
+
76
+ legend_text icon
77
+ end
78
+ end
79
+ end
80
+
81
+ def page_icons(icons, required_pages)
82
+ icon_start = 10 # Skip first page icons
83
+ required_pages.times do |page|
84
+ icons[icon_start..icon_start+11].each_with_index do |group, i|
85
+ group.each_with_index do |icon, j|
86
+ grid(i, j).bounding_box do
87
+
88
+ if block_given?
89
+ yield icon
90
+ else
91
+ icon icon, size: 20, align: :center
92
+ end
93
+
94
+ move_down 4
95
+
96
+ legend_text icon
97
+ end
98
+ end
99
+ icon_start += 1 # New icon row
100
+ end
101
+
102
+ start_new_page unless page == required_pages - 1
103
+ end
104
+ end
105
+ end
Binary file
Binary file
@@ -0,0 +1,36 @@
1
+ # All example code may be executed by calling `rake legend`
2
+
3
+ require 'prawn'
4
+ require_relative '../lib/prawn/icon'
5
+ require_relative 'example_helper'
6
+
7
+ Prawn::Document.generate('fontawesome.pdf') do
8
+ deja_path = File.join \
9
+ Prawn::Icon::FONTDIR, 'DejaVuSans.ttf'
10
+
11
+ font_families.update({
12
+ 'deja' => { normal: deja_path }
13
+ })
14
+
15
+ font('deja')
16
+
17
+ icons = icon_keys(self, 'fa')
18
+ required_pages = number_of_pages(self, 'fa')
19
+
20
+ define_grid(columns: 6, rows: 12, gutter: 16)
21
+
22
+ sub_header = 'FontAwesome'
23
+ link = 'http://fontawesome.io/icons/'
24
+ page_header sub_header, link
25
+
26
+ first_page_icons icons do |icon_key|
27
+ # Just call the +icon+ method and pass in an icon key
28
+ icon icon_key, size: 20, align: :center
29
+ end
30
+
31
+ start_new_page
32
+
33
+ page_icons icons, required_pages do |icon_key|
34
+ icon icon_key, size: 20, align: :center
35
+ end
36
+ end
@@ -0,0 +1,36 @@
1
+ # All example code may be executed by calling `rake legend`
2
+
3
+ require 'prawn'
4
+ require_relative '../lib/prawn/icon'
5
+ require_relative 'example_helper'
6
+
7
+ Prawn::Document.generate('foundation_icons.pdf') do
8
+ deja_path = File.join \
9
+ Prawn::Icon::FONTDIR, 'DejaVuSans.ttf'
10
+
11
+ font_families.update({
12
+ 'deja' => { normal: deja_path }
13
+ })
14
+
15
+ font('deja')
16
+
17
+ icons = icon_keys(self, 'fi')
18
+ required_pages = number_of_pages(self, 'fi')
19
+
20
+ define_grid(columns: 6, rows: 12, gutter: 16)
21
+
22
+ sub_header = 'Zurb Foundation Icons'
23
+ link = 'http://zurb.com/playground/foundation-icon-fonts-3'
24
+ page_header sub_header, link
25
+
26
+ first_page_icons icons do |icon_key|
27
+ # Just call the +icon+ method and pass in an icon key
28
+ icon icon_key, size: 20, align: :center
29
+ end
30
+
31
+ start_new_page
32
+
33
+ page_icons icons, required_pages do |icon_key|
34
+ icon icon_key, size: 20, align: :center
35
+ end
36
+ end
@@ -0,0 +1,36 @@
1
+ # All example code may be executed by calling `rake legend`
2
+
3
+ require 'prawn'
4
+ require_relative '../lib/prawn/icon'
5
+ require_relative 'example_helper'
6
+
7
+ Prawn::Document.generate('octicons.pdf') do
8
+ deja_path = File.join \
9
+ Prawn::Icon::FONTDIR, 'DejaVuSans.ttf'
10
+
11
+ font_families.update({
12
+ 'deja' => { normal: deja_path }
13
+ })
14
+
15
+ font('deja')
16
+
17
+ icons = icon_keys(self, 'octicon')
18
+ required_pages = number_of_pages(self, 'octicon')
19
+
20
+ define_grid(columns: 6, rows: 12, gutter: 16)
21
+
22
+ sub_header = 'GitHub Octicons'
23
+ link = 'https://octicons.github.com'
24
+ page_header sub_header, link
25
+
26
+ first_page_icons icons do |icon_key|
27
+ # Just call the +icon+ method and pass in an icon key
28
+ icon icon_key, size: 20, align: :center
29
+ end
30
+
31
+ start_new_page
32
+
33
+ page_icons icons, required_pages do |icon_key|
34
+ icon icon_key, size: 20, align: :center
35
+ end
36
+ end
Binary file
data/fonts/fa/LICENSE ADDED
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
3
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
4
+ */
data/fonts/fa/fa.yml ADDED
@@ -0,0 +1,551 @@
1
+ fa:
2
+ __font_version__: '4.2'
3
+ adjust: "\uf042"
4
+ adn: "\uf170"
5
+ align-center: "\uf037"
6
+ align-justify: "\uf039"
7
+ align-left: "\uf036"
8
+ align-right: "\uf038"
9
+ ambulance: "\uf0f9"
10
+ anchor: "\uf13d"
11
+ android: "\uf17b"
12
+ angellist: "\uf209"
13
+ angle-double-down: "\uf103"
14
+ angle-double-left: "\uf100"
15
+ angle-double-right: "\uf101"
16
+ angle-double-up: "\uf102"
17
+ angle-down: "\uf107"
18
+ angle-left: "\uf104"
19
+ angle-right: "\uf105"
20
+ angle-up: "\uf106"
21
+ apple: "\uf179"
22
+ archive: "\uf187"
23
+ area-chart: "\uf1fe"
24
+ arrow-circle-down: "\uf0ab"
25
+ arrow-circle-left: "\uf0a8"
26
+ arrow-circle-o-down: "\uf01a"
27
+ arrow-circle-o-left: "\uf190"
28
+ arrow-circle-o-right: "\uf18e"
29
+ arrow-circle-o-up: "\uf01b"
30
+ arrow-circle-right: "\uf0a9"
31
+ arrow-circle-up: "\uf0aa"
32
+ arrow-down: "\uf063"
33
+ arrow-left: "\uf060"
34
+ arrow-right: "\uf061"
35
+ arrow-up: "\uf062"
36
+ arrows: "\uf047"
37
+ arrows-alt: "\uf0b2"
38
+ arrows-h: "\uf07e"
39
+ arrows-v: "\uf07d"
40
+ asterisk: "\uf069"
41
+ at: "\uf1fa"
42
+ automobile: "\uf1b9"
43
+ backward: "\uf04a"
44
+ ban: "\uf05e"
45
+ bank: "\uf19c"
46
+ bar-chart: "\uf080"
47
+ bar-chart-o: "\uf080"
48
+ barcode: "\uf02a"
49
+ bars: "\uf0c9"
50
+ beer: "\uf0fc"
51
+ behance: "\uf1b4"
52
+ behance-square: "\uf1b5"
53
+ bell: "\uf0f3"
54
+ bell-o: "\uf0a2"
55
+ bell-slash: "\uf1f6"
56
+ bell-slash-o: "\uf1f7"
57
+ bicycle: "\uf206"
58
+ binoculars: "\uf1e5"
59
+ birthday-cake: "\uf1fd"
60
+ bitbucket: "\uf171"
61
+ bitbucket-square: "\uf172"
62
+ bitcoin: "\uf15a"
63
+ bold: "\uf032"
64
+ bolt: "\uf0e7"
65
+ bomb: "\uf1e2"
66
+ book: "\uf02d"
67
+ bookmark: "\uf02e"
68
+ bookmark-o: "\uf097"
69
+ briefcase: "\uf0b1"
70
+ btc: "\uf15a"
71
+ bug: "\uf188"
72
+ building: "\uf1ad"
73
+ building-o: "\uf0f7"
74
+ bullhorn: "\uf0a1"
75
+ bullseye: "\uf140"
76
+ bus: "\uf207"
77
+ cab: "\uf1ba"
78
+ calculator: "\uf1ec"
79
+ calendar: "\uf073"
80
+ calendar-o: "\uf133"
81
+ camera: "\uf030"
82
+ camera-retro: "\uf083"
83
+ car: "\uf1b9"
84
+ caret-down: "\uf0d7"
85
+ caret-left: "\uf0d9"
86
+ caret-right: "\uf0da"
87
+ caret-square-o-down: "\uf150"
88
+ caret-square-o-left: "\uf191"
89
+ caret-square-o-right: "\uf152"
90
+ caret-square-o-up: "\uf151"
91
+ caret-up: "\uf0d8"
92
+ cc: "\uf20a"
93
+ cc-amex: "\uf1f3"
94
+ cc-discover: "\uf1f2"
95
+ cc-mastercard: "\uf1f1"
96
+ cc-paypal: "\uf1f4"
97
+ cc-stripe: "\uf1f5"
98
+ cc-visa: "\uf1f0"
99
+ certificate: "\uf0a3"
100
+ chain: "\uf0c1"
101
+ chain-broken: "\uf127"
102
+ check: "\uf00c"
103
+ check-circle: "\uf058"
104
+ check-circle-o: "\uf05d"
105
+ check-square: "\uf14a"
106
+ check-square-o: "\uf046"
107
+ chevron-circle-down: "\uf13a"
108
+ chevron-circle-left: "\uf137"
109
+ chevron-circle-right: "\uf138"
110
+ chevron-circle-up: "\uf139"
111
+ chevron-down: "\uf078"
112
+ chevron-left: "\uf053"
113
+ chevron-right: "\uf054"
114
+ chevron-up: "\uf077"
115
+ child: "\uf1ae"
116
+ circle: "\uf111"
117
+ circle-o: "\uf10c"
118
+ circle-o-notch: "\uf1ce"
119
+ circle-thin: "\uf1db"
120
+ clipboard: "\uf0ea"
121
+ clock-o: "\uf017"
122
+ close: "\uf00d"
123
+ cloud: "\uf0c2"
124
+ cloud-download: "\uf0ed"
125
+ cloud-upload: "\uf0ee"
126
+ cny: "\uf157"
127
+ code: "\uf121"
128
+ code-fork: "\uf126"
129
+ codepen: "\uf1cb"
130
+ coffee: "\uf0f4"
131
+ cog: "\uf013"
132
+ cogs: "\uf085"
133
+ columns: "\uf0db"
134
+ comment: "\uf075"
135
+ comment-o: "\uf0e5"
136
+ comments: "\uf086"
137
+ comments-o: "\uf0e6"
138
+ compass: "\uf14e"
139
+ compress: "\uf066"
140
+ copy: "\uf0c5"
141
+ copyright: "\uf1f9"
142
+ credit-card: "\uf09d"
143
+ crop: "\uf125"
144
+ crosshairs: "\uf05b"
145
+ css3: "\uf13c"
146
+ cube: "\uf1b2"
147
+ cubes: "\uf1b3"
148
+ cut: "\uf0c4"
149
+ cutlery: "\uf0f5"
150
+ dashboard: "\uf0e4"
151
+ database: "\uf1c0"
152
+ dedent: "\uf03b"
153
+ delicious: "\uf1a5"
154
+ desktop: "\uf108"
155
+ deviantart: "\uf1bd"
156
+ digg: "\uf1a6"
157
+ dollar: "\uf155"
158
+ dot-circle-o: "\uf192"
159
+ download: "\uf019"
160
+ dribbble: "\uf17d"
161
+ dropbox: "\uf16b"
162
+ drupal: "\uf1a9"
163
+ edit: "\uf044"
164
+ eject: "\uf052"
165
+ ellipsis-h: "\uf141"
166
+ ellipsis-v: "\uf142"
167
+ empire: "\uf1d1"
168
+ envelope: "\uf0e0"
169
+ envelope-o: "\uf003"
170
+ envelope-square: "\uf199"
171
+ eraser: "\uf12d"
172
+ eur: "\uf153"
173
+ euro: "\uf153"
174
+ exchange: "\uf0ec"
175
+ exclamation: "\uf12a"
176
+ exclamation-circle: "\uf06a"
177
+ exclamation-triangle: "\uf071"
178
+ expand: "\uf065"
179
+ external-link: "\uf08e"
180
+ external-link-square: "\uf14c"
181
+ eye: "\uf06e"
182
+ eye-slash: "\uf070"
183
+ eyedropper: "\uf1fb"
184
+ facebook: "\uf09a"
185
+ facebook-square: "\uf082"
186
+ fast-backward: "\uf049"
187
+ fast-forward: "\uf050"
188
+ fax: "\uf1ac"
189
+ female: "\uf182"
190
+ fighter-jet: "\uf0fb"
191
+ file: "\uf15b"
192
+ file-archive-o: "\uf1c6"
193
+ file-audio-o: "\uf1c7"
194
+ file-code-o: "\uf1c9"
195
+ file-excel-o: "\uf1c3"
196
+ file-image-o: "\uf1c5"
197
+ file-movie-o: "\uf1c8"
198
+ file-o: "\uf016"
199
+ file-pdf-o: "\uf1c1"
200
+ file-photo-o: "\uf1c5"
201
+ file-picture-o: "\uf1c5"
202
+ file-powerpoint-o: "\uf1c4"
203
+ file-sound-o: "\uf1c7"
204
+ file-text: "\uf15c"
205
+ file-text-o: "\uf0f6"
206
+ file-video-o: "\uf1c8"
207
+ file-word-o: "\uf1c2"
208
+ file-zip-o: "\uf1c6"
209
+ files-o: "\uf0c5"
210
+ film: "\uf008"
211
+ filter: "\uf0b0"
212
+ fire: "\uf06d"
213
+ fire-extinguisher: "\uf134"
214
+ flag: "\uf024"
215
+ flag-checkered: "\uf11e"
216
+ flag-o: "\uf11d"
217
+ flash: "\uf0e7"
218
+ flask: "\uf0c3"
219
+ flickr: "\uf16e"
220
+ floppy-o: "\uf0c7"
221
+ folder: "\uf07b"
222
+ folder-o: "\uf114"
223
+ folder-open: "\uf07c"
224
+ folder-open-o: "\uf115"
225
+ font: "\uf031"
226
+ forward: "\uf04e"
227
+ foursquare: "\uf180"
228
+ frown-o: "\uf119"
229
+ futbol-o: "\uf1e3"
230
+ gamepad: "\uf11b"
231
+ gavel: "\uf0e3"
232
+ gbp: "\uf154"
233
+ ge: "\uf1d1"
234
+ gear: "\uf013"
235
+ gears: "\uf085"
236
+ gift: "\uf06b"
237
+ git: "\uf1d3"
238
+ git-square: "\uf1d2"
239
+ github: "\uf09b"
240
+ github-alt: "\uf113"
241
+ github-square: "\uf092"
242
+ gittip: "\uf184"
243
+ glass: "\uf000"
244
+ globe: "\uf0ac"
245
+ google: "\uf1a0"
246
+ google-plus: "\uf0d5"
247
+ google-plus-square: "\uf0d4"
248
+ google-wallet: "\uf1ee"
249
+ graduation-cap: "\uf19d"
250
+ group: "\uf0c0"
251
+ h-square: "\uf0fd"
252
+ hacker-news: "\uf1d4"
253
+ hand-o-down: "\uf0a7"
254
+ hand-o-left: "\uf0a5"
255
+ hand-o-right: "\uf0a4"
256
+ hand-o-up: "\uf0a6"
257
+ hdd-o: "\uf0a0"
258
+ header: "\uf1dc"
259
+ headphones: "\uf025"
260
+ heart: "\uf004"
261
+ heart-o: "\uf08a"
262
+ history: "\uf1da"
263
+ home: "\uf015"
264
+ hospital-o: "\uf0f8"
265
+ html5: "\uf13b"
266
+ ils: "\uf20b"
267
+ image: "\uf03e"
268
+ inbox: "\uf01c"
269
+ indent: "\uf03c"
270
+ info: "\uf129"
271
+ info-circle: "\uf05a"
272
+ inr: "\uf156"
273
+ instagram: "\uf16d"
274
+ institution: "\uf19c"
275
+ ioxhost: "\uf208"
276
+ italic: "\uf033"
277
+ joomla: "\uf1aa"
278
+ jpy: "\uf157"
279
+ jsfiddle: "\uf1cc"
280
+ key: "\uf084"
281
+ keyboard-o: "\uf11c"
282
+ krw: "\uf159"
283
+ language: "\uf1ab"
284
+ laptop: "\uf109"
285
+ lastfm: "\uf202"
286
+ lastfm-square: "\uf203"
287
+ leaf: "\uf06c"
288
+ legal: "\uf0e3"
289
+ lemon-o: "\uf094"
290
+ level-down: "\uf149"
291
+ level-up: "\uf148"
292
+ life-bouy: "\uf1cd"
293
+ life-buoy: "\uf1cd"
294
+ life-ring: "\uf1cd"
295
+ life-saver: "\uf1cd"
296
+ lightbulb-o: "\uf0eb"
297
+ line-chart: "\uf201"
298
+ link: "\uf0c1"
299
+ linkedin: "\uf0e1"
300
+ linkedin-square: "\uf08c"
301
+ linux: "\uf17c"
302
+ list: "\uf03a"
303
+ list-alt: "\uf022"
304
+ list-ol: "\uf0cb"
305
+ list-ul: "\uf0ca"
306
+ location-arrow: "\uf124"
307
+ lock: "\uf023"
308
+ long-arrow-down: "\uf175"
309
+ long-arrow-left: "\uf177"
310
+ long-arrow-right: "\uf178"
311
+ long-arrow-up: "\uf176"
312
+ magic: "\uf0d0"
313
+ magnet: "\uf076"
314
+ mail-forward: "\uf064"
315
+ mail-reply: "\uf112"
316
+ mail-reply-all: "\uf122"
317
+ male: "\uf183"
318
+ map-marker: "\uf041"
319
+ maxcdn: "\uf136"
320
+ meanpath: "\uf20c"
321
+ medkit: "\uf0fa"
322
+ meh-o: "\uf11a"
323
+ microphone: "\uf130"
324
+ microphone-slash: "\uf131"
325
+ minus: "\uf068"
326
+ minus-circle: "\uf056"
327
+ minus-square: "\uf146"
328
+ minus-square-o: "\uf147"
329
+ mobile: "\uf10b"
330
+ mobile-phone: "\uf10b"
331
+ money: "\uf0d6"
332
+ moon-o: "\uf186"
333
+ mortar-board: "\uf19d"
334
+ music: "\uf001"
335
+ navicon: "\uf0c9"
336
+ newspaper-o: "\uf1ea"
337
+ openid: "\uf19b"
338
+ outdent: "\uf03b"
339
+ pagelines: "\uf18c"
340
+ paint-brush: "\uf1fc"
341
+ paper-plane: "\uf1d8"
342
+ paper-plane-o: "\uf1d9"
343
+ paperclip: "\uf0c6"
344
+ paragraph: "\uf1dd"
345
+ paste: "\uf0ea"
346
+ pause: "\uf04c"
347
+ paw: "\uf1b0"
348
+ paypal: "\uf1ed"
349
+ pencil: "\uf040"
350
+ pencil-square: "\uf14b"
351
+ pencil-square-o: "\uf044"
352
+ phone: "\uf095"
353
+ phone-square: "\uf098"
354
+ photo: "\uf03e"
355
+ picture-o: "\uf03e"
356
+ pie-chart: "\uf200"
357
+ pied-piper: "\uf1a7"
358
+ pied-piper-alt: "\uf1a8"
359
+ pinterest: "\uf0d2"
360
+ pinterest-square: "\uf0d3"
361
+ plane: "\uf072"
362
+ play: "\uf04b"
363
+ play-circle: "\uf144"
364
+ play-circle-o: "\uf01d"
365
+ plug: "\uf1e6"
366
+ plus: "\uf067"
367
+ plus-circle: "\uf055"
368
+ plus-square: "\uf0fe"
369
+ plus-square-o: "\uf196"
370
+ power-off: "\uf011"
371
+ print: "\uf02f"
372
+ puzzle-piece: "\uf12e"
373
+ qq: "\uf1d6"
374
+ qrcode: "\uf029"
375
+ question: "\uf128"
376
+ question-circle: "\uf059"
377
+ quote-left: "\uf10d"
378
+ quote-right: "\uf10e"
379
+ ra: "\uf1d0"
380
+ random: "\uf074"
381
+ rebel: "\uf1d0"
382
+ recycle: "\uf1b8"
383
+ reddit: "\uf1a1"
384
+ reddit-square: "\uf1a2"
385
+ refresh: "\uf021"
386
+ remove: "\uf00d"
387
+ renren: "\uf18b"
388
+ reorder: "\uf0c9"
389
+ repeat: "\uf01e"
390
+ reply: "\uf112"
391
+ reply-all: "\uf122"
392
+ retweet: "\uf079"
393
+ rmb: "\uf157"
394
+ road: "\uf018"
395
+ rocket: "\uf135"
396
+ rotate-left: "\uf0e2"
397
+ rotate-right: "\uf01e"
398
+ rouble: "\uf158"
399
+ rss: "\uf09e"
400
+ rss-square: "\uf143"
401
+ rub: "\uf158"
402
+ ruble: "\uf158"
403
+ rupee: "\uf156"
404
+ save: "\uf0c7"
405
+ scissors: "\uf0c4"
406
+ search: "\uf002"
407
+ search-minus: "\uf010"
408
+ search-plus: "\uf00e"
409
+ send: "\uf1d8"
410
+ send-o: "\uf1d9"
411
+ share: "\uf064"
412
+ share-alt: "\uf1e0"
413
+ share-alt-square: "\uf1e1"
414
+ share-square: "\uf14d"
415
+ share-square-o: "\uf045"
416
+ shekel: "\uf20b"
417
+ sheqel: "\uf20b"
418
+ shield: "\uf132"
419
+ shopping-cart: "\uf07a"
420
+ sign-in: "\uf090"
421
+ sign-out: "\uf08b"
422
+ signal: "\uf012"
423
+ sitemap: "\uf0e8"
424
+ skype: "\uf17e"
425
+ slack: "\uf198"
426
+ sliders: "\uf1de"
427
+ slideshare: "\uf1e7"
428
+ smile-o: "\uf118"
429
+ soccer-ball-o: "\uf1e3"
430
+ sort: "\uf0dc"
431
+ sort-alpha-asc: "\uf15d"
432
+ sort-alpha-desc: "\uf15e"
433
+ sort-amount-asc: "\uf160"
434
+ sort-amount-desc: "\uf161"
435
+ sort-asc: "\uf0de"
436
+ sort-desc: "\uf0dd"
437
+ sort-down: "\uf0dd"
438
+ sort-numeric-asc: "\uf162"
439
+ sort-numeric-desc: "\uf163"
440
+ sort-up: "\uf0de"
441
+ soundcloud: "\uf1be"
442
+ space-shuttle: "\uf197"
443
+ spinner: "\uf110"
444
+ spoon: "\uf1b1"
445
+ spotify: "\uf1bc"
446
+ square: "\uf0c8"
447
+ square-o: "\uf096"
448
+ stack-exchange: "\uf18d"
449
+ stack-overflow: "\uf16c"
450
+ star: "\uf005"
451
+ star-half: "\uf089"
452
+ star-half-empty: "\uf123"
453
+ star-half-full: "\uf123"
454
+ star-half-o: "\uf123"
455
+ star-o: "\uf006"
456
+ steam: "\uf1b6"
457
+ steam-square: "\uf1b7"
458
+ step-backward: "\uf048"
459
+ step-forward: "\uf051"
460
+ stethoscope: "\uf0f1"
461
+ stop: "\uf04d"
462
+ strikethrough: "\uf0cc"
463
+ stumbleupon: "\uf1a4"
464
+ stumbleupon-circle: "\uf1a3"
465
+ subscript: "\uf12c"
466
+ suitcase: "\uf0f2"
467
+ sun-o: "\uf185"
468
+ superscript: "\uf12b"
469
+ support: "\uf1cd"
470
+ table: "\uf0ce"
471
+ tablet: "\uf10a"
472
+ tachometer: "\uf0e4"
473
+ tag: "\uf02b"
474
+ tags: "\uf02c"
475
+ tasks: "\uf0ae"
476
+ taxi: "\uf1ba"
477
+ tencent-weibo: "\uf1d5"
478
+ terminal: "\uf120"
479
+ text-height: "\uf034"
480
+ text-width: "\uf035"
481
+ th: "\uf00a"
482
+ th-large: "\uf009"
483
+ th-list: "\uf00b"
484
+ thumb-tack: "\uf08d"
485
+ thumbs-down: "\uf165"
486
+ thumbs-o-down: "\uf088"
487
+ thumbs-o-up: "\uf087"
488
+ thumbs-up: "\uf164"
489
+ ticket: "\uf145"
490
+ times: "\uf00d"
491
+ times-circle: "\uf057"
492
+ times-circle-o: "\uf05c"
493
+ tint: "\uf043"
494
+ toggle-down: "\uf150"
495
+ toggle-left: "\uf191"
496
+ toggle-off: "\uf204"
497
+ toggle-on: "\uf205"
498
+ toggle-right: "\uf152"
499
+ toggle-up: "\uf151"
500
+ trash: "\uf1f8"
501
+ trash-o: "\uf014"
502
+ tree: "\uf1bb"
503
+ trello: "\uf181"
504
+ trophy: "\uf091"
505
+ truck: "\uf0d1"
506
+ try: "\uf195"
507
+ tty: "\uf1e4"
508
+ tumblr: "\uf173"
509
+ tumblr-square: "\uf174"
510
+ turkish-lira: "\uf195"
511
+ twitch: "\uf1e8"
512
+ twitter: "\uf099"
513
+ twitter-square: "\uf081"
514
+ umbrella: "\uf0e9"
515
+ underline: "\uf0cd"
516
+ undo: "\uf0e2"
517
+ university: "\uf19c"
518
+ unlink: "\uf127"
519
+ unlock: "\uf09c"
520
+ unlock-alt: "\uf13e"
521
+ unsorted: "\uf0dc"
522
+ upload: "\uf093"
523
+ usd: "\uf155"
524
+ user: "\uf007"
525
+ user-md: "\uf0f0"
526
+ users: "\uf0c0"
527
+ video-camera: "\uf03d"
528
+ vimeo-square: "\uf194"
529
+ vine: "\uf1ca"
530
+ vk: "\uf189"
531
+ volume-down: "\uf027"
532
+ volume-off: "\uf026"
533
+ volume-up: "\uf028"
534
+ warning: "\uf071"
535
+ wechat: "\uf1d7"
536
+ weibo: "\uf18a"
537
+ weixin: "\uf1d7"
538
+ wheelchair: "\uf193"
539
+ wifi: "\uf1eb"
540
+ windows: "\uf17a"
541
+ won: "\uf159"
542
+ wordpress: "\uf19a"
543
+ wrench: "\uf0ad"
544
+ xing: "\uf168"
545
+ xing-square: "\uf169"
546
+ yahoo: "\uf19e"
547
+ yelp: "\uf1e9"
548
+ yen: "\uf157"
549
+ youtube: "\uf167"
550
+ youtube-play: "\uf16a"
551
+ youtube-square: "\uf166"