combine_pdf 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 51a498d24b46760b925e4127a175868febcdb19a
4
- data.tar.gz: 653351536fb043e14f94afc14805f488dc612c7a
3
+ metadata.gz: 7b02c8e66f414aca68634e54b0c1110e0aa26892
4
+ data.tar.gz: 8e90be38a9efb1b97f43154f17c33668ac6daf74
5
5
  SHA512:
6
- metadata.gz: c0089692cf609b368631b7e7afd59381c65403a69bfba0e27429cef04224f08074592781500b4e8ecf645ec0b422542920dd620a18e6e5fcdfaf6459d834640e
7
- data.tar.gz: 95489bd58f7afab15904398fd9d52e3594ab44ce54f75390805c4f87073162d543a2eece82501895ed495fb78b7fe6a908140ed89dcf16fe64c1db009df19fc8
6
+ metadata.gz: c67a019d1a632c14e8a302718d607bc28bd6668e35620669a40617d56df592587452f13c950b5b1b42bf69c90a792f72495eca89013524d8e89bda1c02399b49
7
+ data.tar.gz: ca90b13ddb68af9749dd8e3f4a211720d453461a45175c906f624c6f9044951b306d1e75d36b6015945aa8a07a5708c23de34b795913c5375d5c3ac103d0afbd
data/lib/combine_pdf.rb CHANGED
@@ -6,26 +6,28 @@ require 'strscan'
6
6
  require "combine_pdf/combine_pdf_operations.rb"
7
7
  require "combine_pdf/combine_pdf_basic_writer.rb"
8
8
  require "combine_pdf/combine_pdf_decrypt.rb"
9
+ require "combine_pdf/combine_pdf_fonts.rb"
9
10
  require "combine_pdf/combine_pdf_filter.rb"
10
11
  require "combine_pdf/combine_pdf_parser.rb"
11
12
  require "combine_pdf/combine_pdf_pdf.rb"
12
13
 
13
- require "combine_pdf/font_metrics/courier-bold_metrics.rb"
14
- require "combine_pdf/font_metrics/courier-boldoblique_metrics.rb"
15
- require "combine_pdf/font_metrics/courier-oblique_metrics.rb"
16
- require "combine_pdf/font_metrics/courier_metrics.rb"
17
- require "combine_pdf/font_metrics/helvetica-bold_metrics.rb"
18
- require "combine_pdf/font_metrics/helvetica-boldoblique_metrics.rb"
19
- require "combine_pdf/font_metrics/helvetica-oblique_metrics.rb"
20
- require "combine_pdf/font_metrics/helvetica_metrics.rb"
21
- require "combine_pdf/font_metrics/symbol_metrics.rb"
22
- require "combine_pdf/font_metrics/times-bold_metrics.rb"
23
- require "combine_pdf/font_metrics/times-bolditalic_metrics.rb"
24
- require "combine_pdf/font_metrics/times-italic_metrics.rb"
25
- require "combine_pdf/font_metrics/times-roman_metrics.rb"
26
- require "combine_pdf/font_metrics/zapfdingbats_metrics.rb"
14
+ # # will be removed one font support and font library is completed.
15
+ # require "combine_pdf/font_metrics/courier-bold_metrics.rb"
16
+ # require "combine_pdf/font_metrics/courier-boldoblique_metrics.rb"
17
+ # require "combine_pdf/font_metrics/courier-oblique_metrics.rb"
18
+ # require "combine_pdf/font_metrics/courier_metrics.rb"
19
+ # require "combine_pdf/font_metrics/helvetica-bold_metrics.rb"
20
+ # require "combine_pdf/font_metrics/helvetica-boldoblique_metrics.rb"
21
+ # require "combine_pdf/font_metrics/helvetica-oblique_metrics.rb"
22
+ # require "combine_pdf/font_metrics/helvetica_metrics.rb"
23
+ # require "combine_pdf/font_metrics/symbol_metrics.rb"
24
+ # require "combine_pdf/font_metrics/times-bold_metrics.rb"
25
+ # require "combine_pdf/font_metrics/times-bolditalic_metrics.rb"
26
+ # require "combine_pdf/font_metrics/times-italic_metrics.rb"
27
+ # require "combine_pdf/font_metrics/times-roman_metrics.rb"
28
+ # require "combine_pdf/font_metrics/zapfdingbats_metrics.rb"
29
+ # require "combine_pdf/font_metrics/metrics_dictionary.rb"
27
30
 
28
- require "combine_pdf/font_metrics/metrics_dictionary.rb"
29
31
 
30
32
 
31
33
 
@@ -259,7 +259,29 @@ module CombinePDF
259
259
 
260
260
  self
261
261
  end
262
-
262
+ def dimensions_of(text, font_name, size = 1000)
263
+ Fonts.get_font(font_name).dimensions_of text, size
264
+ end
265
+ # this method returns the size for which the text fits the requested metrices
266
+ # the size is type Float and is rather exact
267
+ # if the text cannot fit such a small place, returns zero (0).
268
+ # maximum font size possible is set to 100,000 - which should be big enough for anything
269
+ # text:: the text to fit
270
+ # font:: the font name. @see font
271
+ # length:: the length to fit
272
+ # height:: the height to fit (optional - normally length is the issue)
273
+ def fit_text(text, font, length, height = 10000000)
274
+ size = 100000
275
+ size_array = [size]
276
+ metrics = Fonts.get_font(font).dimensions_of text, size
277
+ if metrics[0] > length
278
+ size_array << size * length/metrics[0]
279
+ end
280
+ if metrics[1] > height
281
+ size_array << size * height/metrics[1]
282
+ end
283
+ size_array.min
284
+ end
263
285
  protected
264
286
 
265
287
  # accessor (getter) for the :Resources element of the page
@@ -289,22 +311,6 @@ module CombinePDF
289
311
  # - :Symbol
290
312
  # - :ZapfDingbats
291
313
  def set_font(font = :Helvetica)
292
- # refuse any other fonts that arn't basic standard fonts
293
- allow_fonts = [ :"Times-Roman",
294
- :"Times-Bold",
295
- :"Times-Italic",
296
- :"Times-BoldItalic",
297
- :Helvetica,
298
- :"Helvetica-Bold",
299
- :"Helvetica-BoldOblique",
300
- :"Helvetica-Oblique",
301
- :Courier,
302
- :"Courier-Bold",
303
- :"Courier-Oblique",
304
- :"Courier-BoldOblique",
305
- :Symbol,
306
- :ZapfDingbats ]
307
- raise "set_font(font) accepts only one of the 14 standards fonts - wrong font!" unless allow_fonts.include? font
308
314
  # if the font exists, return it's name
309
315
  resources[:Font] ||= {}
310
316
  resources[:Font].each do |k,v|
@@ -312,10 +318,12 @@ module CombinePDF
312
318
  return k
313
319
  end
314
320
  end
315
- # create font object
316
- font_object = { Type: :Font, Subtype: :Type1, BaseFont: font}
317
321
  # set a secure name for the font
318
322
  name = (SecureRandom.urlsafe_base64(9)).to_sym
323
+ # get font object
324
+ font_object = Fonts.get_font(font)
325
+ # return false if the font wan't found in the library.
326
+ return false unless font_object
319
327
  # add object to reasource
320
328
  resources[:Font][name] = font_object
321
329
  #return name
@@ -0,0 +1,174 @@
1
+ # -*- encoding : utf-8 -*-
2
+ ########################################################
3
+ ## Thoughts from reading the ISO 32000-1:2008
4
+ ## this file is part of the CombinePDF library and the code
5
+ ## is subject to the same license.
6
+ ########################################################
7
+
8
+
9
+
10
+
11
+
12
+
13
+ module CombinePDF
14
+
15
+ #:nodoc: all
16
+
17
+
18
+
19
+ module Fonts
20
+
21
+ protected
22
+
23
+ # the internal class for the Fonts model
24
+ #
25
+ # this is an internal class, used by PDFWriter and PDF. you don't normally need to use this.
26
+ class Font < Hash
27
+ # set/get the name of the font
28
+ attr_accessor :name
29
+ # get the metrics dictionary for the font
30
+ attr_reader :metrics
31
+ # set the metrics dictionary of the font, making sure the :missing value is set.
32
+ def metrics= (new_metrics)
33
+ @metrics = new_metrics
34
+ @metrics[:missing] = @metrics.first[1] unless @metrics[:missing]
35
+ end
36
+ # internelized a new Font object, setting it's name, it's metrics Hash and the object Hash.
37
+ def initialize(name = nil, font_metrics = {32=>{:wx=>250, :boundingbox=>[0, 0, 0, 0]}}, object = nil)
38
+ self.name = name
39
+ self.metrics = font_metrics
40
+ self[:is_reference_only] = true
41
+ self[:referenced_object] = object
42
+ end
43
+
44
+ # This function calculates the dimensions of a string in a PDF.
45
+ #
46
+ # UNICODE SUPPORT IS FONT DEPENDENT!
47
+ #
48
+ # text:: String containing the text for which the demantion box will be calculated.
49
+ # size:: the size of the text, as it will be applied in the PDF.
50
+ def dimensions_of(text, size = 1000)
51
+ metrics_array = []
52
+ # the following is only good for latin text - unicode support is missing!!!!
53
+ text.each_char do |c|
54
+ metrics_array << (self.metrics[c.ord] or self.metrics[:missing])
55
+ end
56
+ height = metrics_array.map {|m| m ? m[:boundingbox][3] : 0} .max
57
+ height = height - (metrics_array.map {|m| m ? m[:boundingbox][1] : 0} ).min
58
+ width = 0.0
59
+ metrics_array.each do |m|
60
+ width += (m[:wx] or m[:wy])
61
+ end
62
+ return [height.to_f/1000*size, width.to_f/1000*size] if metrics_array[0][:wy]
63
+ [width.to_f/1000*size, height.to_f/1000*size]
64
+ end
65
+ end
66
+ end
67
+ end
68
+
69
+
70
+
71
+ module CombinePDF
72
+
73
+ #:nodoc: all
74
+
75
+ # this is an internal module used to store the fonts used by PDFWriter. You dont need to use this module.
76
+ #
77
+ # In the future, this model will help to add unicode supports and fonts support,
78
+ # so that the page numbering and textbox features could be used with international fonts and types.
79
+ #
80
+ # this model will be used in the future for the add_font method which will be defined in CombinePDF or PDFWriter.
81
+ module Fonts
82
+ module_function
83
+
84
+ # gets a font from the fonts library
85
+ def get_font(name = :Helvetica)
86
+ initiate_library
87
+ FONTS_LIBRARY[name]
88
+ end
89
+
90
+ # adds a correctly formatted font object to the font library.
91
+ # font_name:: a Symbol with the name of the font. if the fonts exists, it will be overwritten!
92
+ # font_metrics:: a Hash of ont metrics, of the format i => {wx: char_width, boundingbox: [left_x, buttom_y, right_x, top_y]} where i == character code (i.e. 32 for space). The Hash should contain a special value :missing for the metrics of missing characters. an optional :wy will be supported in the future, for up to down fonts.
93
+ # font_pdf_object:: a Hash in the internal format recognized by CombinePDF, that represents the font object.
94
+ def register_font(font_name, font_metrics, font_pdf_object)
95
+ new_font = Font.new
96
+ new_font.name = font_name
97
+ new_font.metrics = font_metrics
98
+ new_font[:is_reference_only] = true
99
+ new_font[:referenced_object] = font_pdf_object
100
+ FONTS_LIBRARY[new_font.name] = new_font
101
+ end
102
+
103
+ # This function calculates the dimensions of a string in a PDF.
104
+ #
105
+ # UNICODE SUPPORT IS MISSING!
106
+ #
107
+ # text:: String containing the text for which the demantion box will be calculated.
108
+ # font:: the font name, from the 14 fonts possible. @see font
109
+ # size:: the size of the text, as it will be applied in the PDF.
110
+ def dimensions_of(text, font_name, size = 1000)
111
+ get_font(font_name).dimensions_of text, size
112
+ end
113
+
114
+ # this function registers the 14 standard fonts to the library.
115
+ #
116
+ # it will be called when the module first requests a font from the library.
117
+ #
118
+ # if the 14 standard fonts are already registered, it will simply return false.
119
+ def initiate_library
120
+ # do nothing if the library is already initiated
121
+ return false if FONTS_LIBRARY.has_key? :Helvetica
122
+ # font metrics objects to be used
123
+ times_metrics = {nil=>{:wx=>250, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>333, :boundingbox=>[130, -9, 238, 676]}, 34=>{:wx=>408, :boundingbox=>[77, 431, 331, 676]}, 35=>{:wx=>500, :boundingbox=>[5, 0, 496, 662]}, 36=>{:wx=>500, :boundingbox=>[44, -87, 457, 727]}, 37=>{:wx=>833, :boundingbox=>[61, -13, 772, 676]}, 38=>{:wx=>778, :boundingbox=>[42, -13, 750, 676]}, 39=>{:wx=>333, :boundingbox=>[79, 433, 218, 676]}, 40=>{:wx=>333, :boundingbox=>[48, -177, 304, 676]}, 41=>{:wx=>333, :boundingbox=>[29, -177, 285, 676]}, 42=>{:wx=>500, :boundingbox=>[69, 265, 432, 676]}, 43=>{:wx=>564, :boundingbox=>[30, 0, 534, 506]}, 44=>{:wx=>250, :boundingbox=>[56, -141, 195, 102]}, 45=>{:wx=>333, :boundingbox=>[39, 194, 285, 257]}, 46=>{:wx=>250, :boundingbox=>[70, -11, 181, 100]}, 47=>{:wx=>278, :boundingbox=>[-9, -14, 287, 676]}, 48=>{:wx=>500, :boundingbox=>[24, -14, 476, 676]}, 49=>{:wx=>500, :boundingbox=>[111, 0, 394, 676]}, 50=>{:wx=>500, :boundingbox=>[30, 0, 475, 676]}, 51=>{:wx=>500, :boundingbox=>[43, -14, 431, 676]}, 52=>{:wx=>500, :boundingbox=>[12, 0, 472, 676]}, 53=>{:wx=>500, :boundingbox=>[32, -14, 438, 688]}, 54=>{:wx=>500, :boundingbox=>[34, -14, 468, 684]}, 55=>{:wx=>500, :boundingbox=>[20, -8, 449, 662]}, 56=>{:wx=>500, :boundingbox=>[56, -14, 445, 676]}, 57=>{:wx=>500, :boundingbox=>[30, -22, 459, 676]}, 58=>{:wx=>278, :boundingbox=>[81, -11, 192, 459]}, 59=>{:wx=>278, :boundingbox=>[80, -141, 219, 459]}, 60=>{:wx=>564, :boundingbox=>[28, -8, 536, 514]}, 61=>{:wx=>564, :boundingbox=>[30, 120, 534, 386]}, 62=>{:wx=>564, :boundingbox=>[28, -8, 536, 514]}, 63=>{:wx=>444, :boundingbox=>[68, -8, 414, 676]}, 64=>{:wx=>921, :boundingbox=>[116, -14, 809, 676]}, 65=>{:wx=>722, :boundingbox=>[15, 0, 706, 674]}, 66=>{:wx=>667, :boundingbox=>[17, 0, 593, 662]}, 67=>{:wx=>667, :boundingbox=>[28, -14, 633, 676]}, 68=>{:wx=>722, :boundingbox=>[16, 0, 685, 662]}, 69=>{:wx=>611, :boundingbox=>[12, 0, 597, 662]}, 70=>{:wx=>556, :boundingbox=>[12, 0, 546, 662]}, 71=>{:wx=>722, :boundingbox=>[32, -14, 709, 676]}, 72=>{:wx=>722, :boundingbox=>[19, 0, 702, 662]}, 73=>{:wx=>333, :boundingbox=>[18, 0, 315, 662]}, 74=>{:wx=>389, :boundingbox=>[10, -14, 370, 662]}, 75=>{:wx=>722, :boundingbox=>[34, 0, 723, 662]}, 76=>{:wx=>611, :boundingbox=>[12, 0, 598, 662]}, 77=>{:wx=>889, :boundingbox=>[12, 0, 863, 662]}, 78=>{:wx=>722, :boundingbox=>[12, -11, 707, 662]}, 79=>{:wx=>722, :boundingbox=>[34, -14, 688, 676]}, 80=>{:wx=>556, :boundingbox=>[16, 0, 542, 662]}, 81=>{:wx=>722, :boundingbox=>[34, -178, 701, 676]}, 82=>{:wx=>667, :boundingbox=>[17, 0, 659, 662]}, 83=>{:wx=>556, :boundingbox=>[42, -14, 491, 676]}, 84=>{:wx=>611, :boundingbox=>[17, 0, 593, 662]}, 85=>{:wx=>722, :boundingbox=>[14, -14, 705, 662]}, 86=>{:wx=>722, :boundingbox=>[16, -11, 697, 662]}, 87=>{:wx=>944, :boundingbox=>[5, -11, 932, 662]}, 88=>{:wx=>722, :boundingbox=>[10, 0, 704, 662]}, 89=>{:wx=>722, :boundingbox=>[22, 0, 703, 662]}, 90=>{:wx=>611, :boundingbox=>[9, 0, 597, 662]}, 91=>{:wx=>333, :boundingbox=>[88, -156, 299, 662]}, 92=>{:wx=>278, :boundingbox=>[-9, -14, 287, 676]}, 93=>{:wx=>333, :boundingbox=>[34, -156, 245, 662]}, 94=>{:wx=>469, :boundingbox=>[24, 297, 446, 662]}, 95=>{:wx=>500, :boundingbox=>[0, -125, 500, -75]}, 96=>{:wx=>333, :boundingbox=>[115, 433, 254, 676]}, 97=>{:wx=>444, :boundingbox=>[37, -10, 442, 460]}, 98=>{:wx=>500, :boundingbox=>[3, -10, 468, 683]}, 99=>{:wx=>444, :boundingbox=>[25, -10, 412, 460]}, 100=>{:wx=>500, :boundingbox=>[27, -10, 491, 683]}, 101=>{:wx=>444, :boundingbox=>[25, -10, 424, 460]}, 102=>{:wx=>333, :boundingbox=>[20, 0, 383, 683]}, 103=>{:wx=>500, :boundingbox=>[28, -218, 470, 460]}, 104=>{:wx=>500, :boundingbox=>[9, 0, 487, 683]}, 105=>{:wx=>278, :boundingbox=>[16, 0, 253, 683]}, 106=>{:wx=>278, :boundingbox=>[-70, -218, 194, 683]}, 107=>{:wx=>500, :boundingbox=>[7, 0, 505, 683]}, 108=>{:wx=>278, :boundingbox=>[19, 0, 257, 683]}, 109=>{:wx=>778, :boundingbox=>[16, 0, 775, 460]}, 110=>{:wx=>500, :boundingbox=>[16, 0, 485, 460]}, 111=>{:wx=>500, :boundingbox=>[29, -10, 470, 460]}, 112=>{:wx=>500, :boundingbox=>[5, -217, 470, 460]}, 113=>{:wx=>500, :boundingbox=>[24, -217, 488, 460]}, 114=>{:wx=>333, :boundingbox=>[5, 0, 335, 460]}, 115=>{:wx=>389, :boundingbox=>[51, -10, 348, 460]}, 116=>{:wx=>278, :boundingbox=>[13, -10, 279, 579]}, 117=>{:wx=>500, :boundingbox=>[9, -10, 479, 450]}, 118=>{:wx=>500, :boundingbox=>[19, -14, 477, 450]}, 119=>{:wx=>722, :boundingbox=>[21, -14, 694, 450]}, 120=>{:wx=>500, :boundingbox=>[17, 0, 479, 450]}, 121=>{:wx=>500, :boundingbox=>[14, -218, 475, 450]}, 122=>{:wx=>444, :boundingbox=>[27, 0, 418, 450]}, 123=>{:wx=>480, :boundingbox=>[100, -181, 350, 680]}, 124=>{:wx=>200, :boundingbox=>[67, -218, 133, 782]}, 125=>{:wx=>480, :boundingbox=>[130, -181, 380, 680]}, 126=>{:wx=>541, :boundingbox=>[40, 183, 502, 323]}, 161=>{:wx=>333, :boundingbox=>[97, -218, 205, 467]}, 162=>{:wx=>500, :boundingbox=>[53, -138, 448, 579]}, 163=>{:wx=>500, :boundingbox=>[12, -8, 490, 676]}, 164=>{:wx=>167, :boundingbox=>[-168, -14, 331, 676]}, 165=>{:wx=>500, :boundingbox=>[-53, 0, 512, 662]}, 166=>{:wx=>500, :boundingbox=>[7, -189, 490, 676]}, 167=>{:wx=>500, :boundingbox=>[70, -148, 426, 676]}, 168=>{:wx=>500, :boundingbox=>[-22, 58, 522, 602]}, 169=>{:wx=>180, :boundingbox=>[48, 431, 133, 676]}, 170=>{:wx=>444, :boundingbox=>[43, 433, 414, 676]}, 171=>{:wx=>500, :boundingbox=>[42, 33, 456, 416]}, 172=>{:wx=>333, :boundingbox=>[63, 33, 285, 416]}, 173=>{:wx=>333, :boundingbox=>[48, 33, 270, 416]}, 174=>{:wx=>556, :boundingbox=>[31, 0, 521, 683]}, 175=>{:wx=>556, :boundingbox=>[32, 0, 521, 683]}, 177=>{:wx=>500, :boundingbox=>[0, 201, 500, 250]}, 178=>{:wx=>500, :boundingbox=>[59, -149, 442, 676]}, 179=>{:wx=>500, :boundingbox=>[58, -153, 442, 676]}, 180=>{:wx=>250, :boundingbox=>[70, 199, 181, 310]}, 182=>{:wx=>453, :boundingbox=>[-22, -154, 450, 662]}, 183=>{:wx=>350, :boundingbox=>[40, 196, 310, 466]}, 184=>{:wx=>333, :boundingbox=>[79, -141, 218, 102]}, 185=>{:wx=>444, :boundingbox=>[45, -141, 416, 102]}, 186=>{:wx=>444, :boundingbox=>[30, 433, 401, 676]}, 187=>{:wx=>500, :boundingbox=>[44, 33, 458, 416]}, 188=>{:wx=>1000, :boundingbox=>[111, -11, 888, 100]}, 189=>{:wx=>1000, :boundingbox=>[7, -19, 994, 706]}, 191=>{:wx=>444, :boundingbox=>[30, -218, 376, 466]}, 193=>{:wx=>333, :boundingbox=>[19, 507, 242, 678]}, 194=>{:wx=>333, :boundingbox=>[93, 507, 317, 678]}, 195=>{:wx=>333, :boundingbox=>[11, 507, 322, 674]}, 196=>{:wx=>333, :boundingbox=>[1, 532, 331, 638]}, 197=>{:wx=>333, :boundingbox=>[11, 547, 322, 601]}, 198=>{:wx=>333, :boundingbox=>[26, 507, 307, 664]}, 199=>{:wx=>333, :boundingbox=>[118, 581, 216, 681]}, 200=>{:wx=>333, :boundingbox=>[18, 581, 315, 681]}, 202=>{:wx=>333, :boundingbox=>[67, 512, 266, 711]}, 203=>{:wx=>333, :boundingbox=>[52, -215, 261, 0]}, 205=>{:wx=>333, :boundingbox=>[-3, 507, 377, 678]}, 206=>{:wx=>333, :boundingbox=>[62, -165, 243, 0]}, 207=>{:wx=>333, :boundingbox=>[11, 507, 322, 674]}, 208=>{:wx=>1000, :boundingbox=>[0, 201, 1000, 250]}, 225=>{:wx=>889, :boundingbox=>[0, 0, 863, 662]}, 227=>{:wx=>276, :boundingbox=>[4, 394, 270, 676]}, 232=>{:wx=>611, :boundingbox=>[12, 0, 598, 662]}, 233=>{:wx=>722, :boundingbox=>[34, -80, 688, 734]}, 234=>{:wx=>889, :boundingbox=>[30, -6, 885, 668]}, 235=>{:wx=>310, :boundingbox=>[6, 394, 304, 676]}, 241=>{:wx=>667, :boundingbox=>[38, -10, 632, 460]}, 245=>{:wx=>278, :boundingbox=>[16, 0, 253, 460]}, 248=>{:wx=>278, :boundingbox=>[19, 0, 259, 683]}, 249=>{:wx=>500, :boundingbox=>[29, -112, 470, 551]}, 250=>{:wx=>722, :boundingbox=>[30, -10, 690, 460]}, 251=>{:wx=>500, :boundingbox=>[12, -9, 468, 683]}, -1=>{:wx=>500, :boundingbox=>[0, 0, 0, 0]}}
124
+ times_bold_metrics = {32=>{:wx=>250, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>333, :boundingbox=>[81, -13, 251, 691]}, 34=>{:wx=>555, :boundingbox=>[83, 404, 472, 691]}, 35=>{:wx=>500, :boundingbox=>[4, 0, 496, 700]}, 36=>{:wx=>500, :boundingbox=>[29, -99, 472, 750]}, 37=>{:wx=>1000, :boundingbox=>[124, -14, 877, 692]}, 38=>{:wx=>833, :boundingbox=>[62, -16, 787, 691]}, 39=>{:wx=>333, :boundingbox=>[79, 356, 263, 691]}, 40=>{:wx=>333, :boundingbox=>[46, -168, 306, 694]}, 41=>{:wx=>333, :boundingbox=>[27, -168, 287, 694]}, 42=>{:wx=>500, :boundingbox=>[56, 255, 447, 691]}, 43=>{:wx=>570, :boundingbox=>[33, 0, 537, 506]}, 44=>{:wx=>250, :boundingbox=>[39, -180, 223, 155]}, 45=>{:wx=>333, :boundingbox=>[44, 171, 287, 287]}, 46=>{:wx=>250, :boundingbox=>[41, -13, 210, 156]}, 47=>{:wx=>278, :boundingbox=>[-24, -19, 302, 691]}, 48=>{:wx=>500, :boundingbox=>[24, -13, 476, 688]}, 49=>{:wx=>500, :boundingbox=>[65, 0, 442, 688]}, 50=>{:wx=>500, :boundingbox=>[17, 0, 478, 688]}, 51=>{:wx=>500, :boundingbox=>[16, -14, 468, 688]}, 52=>{:wx=>500, :boundingbox=>[19, 0, 475, 688]}, 53=>{:wx=>500, :boundingbox=>[22, -8, 470, 676]}, 54=>{:wx=>500, :boundingbox=>[28, -13, 475, 688]}, 55=>{:wx=>500, :boundingbox=>[17, 0, 477, 676]}, 56=>{:wx=>500, :boundingbox=>[28, -13, 472, 688]}, 57=>{:wx=>500, :boundingbox=>[26, -13, 473, 688]}, 58=>{:wx=>333, :boundingbox=>[82, -13, 251, 472]}, 59=>{:wx=>333, :boundingbox=>[82, -180, 266, 472]}, 60=>{:wx=>570, :boundingbox=>[31, -8, 539, 514]}, 61=>{:wx=>570, :boundingbox=>[33, 107, 537, 399]}, 62=>{:wx=>570, :boundingbox=>[31, -8, 539, 514]}, 63=>{:wx=>500, :boundingbox=>[57, -13, 445, 689]}, 64=>{:wx=>930, :boundingbox=>[108, -19, 822, 691]}, 65=>{:wx=>722, :boundingbox=>[9, 0, 689, 690]}, 66=>{:wx=>667, :boundingbox=>[16, 0, 619, 676]}, 67=>{:wx=>722, :boundingbox=>[49, -19, 687, 691]}, 68=>{:wx=>722, :boundingbox=>[14, 0, 690, 676]}, 69=>{:wx=>667, :boundingbox=>[16, 0, 641, 676]}, 70=>{:wx=>611, :boundingbox=>[16, 0, 583, 676]}, 71=>{:wx=>778, :boundingbox=>[37, -19, 755, 691]}, 72=>{:wx=>778, :boundingbox=>[21, 0, 759, 676]}, 73=>{:wx=>389, :boundingbox=>[20, 0, 370, 676]}, 74=>{:wx=>500, :boundingbox=>[3, -96, 479, 676]}, 75=>{:wx=>778, :boundingbox=>[30, 0, 769, 676]}, 76=>{:wx=>667, :boundingbox=>[19, 0, 638, 676]}, 77=>{:wx=>944, :boundingbox=>[14, 0, 921, 676]}, 78=>{:wx=>722, :boundingbox=>[16, -18, 701, 676]}, 79=>{:wx=>778, :boundingbox=>[35, -19, 743, 691]}, 80=>{:wx=>611, :boundingbox=>[16, 0, 600, 676]}, 81=>{:wx=>778, :boundingbox=>[35, -176, 743, 691]}, 82=>{:wx=>722, :boundingbox=>[26, 0, 715, 676]}, 83=>{:wx=>556, :boundingbox=>[35, -19, 513, 692]}, 84=>{:wx=>667, :boundingbox=>[31, 0, 636, 676]}, 85=>{:wx=>722, :boundingbox=>[16, -19, 701, 676]}, 86=>{:wx=>722, :boundingbox=>[16, -18, 701, 676]}, 87=>{:wx=>1000, :boundingbox=>[19, -15, 981, 676]}, 88=>{:wx=>722, :boundingbox=>[16, 0, 699, 676]}, 89=>{:wx=>722, :boundingbox=>[15, 0, 699, 676]}, 90=>{:wx=>667, :boundingbox=>[28, 0, 634, 676]}, 91=>{:wx=>333, :boundingbox=>[67, -149, 301, 678]}, 92=>{:wx=>278, :boundingbox=>[-25, -19, 303, 691]}, 93=>{:wx=>333, :boundingbox=>[32, -149, 266, 678]}, 94=>{:wx=>581, :boundingbox=>[73, 311, 509, 676]}, 95=>{:wx=>500, :boundingbox=>[0, -125, 500, -75]}, 96=>{:wx=>333, :boundingbox=>[70, 356, 254, 691]}, 97=>{:wx=>500, :boundingbox=>[25, -14, 488, 473]}, 98=>{:wx=>556, :boundingbox=>[17, -14, 521, 676]}, 99=>{:wx=>444, :boundingbox=>[25, -14, 430, 473]}, 100=>{:wx=>556, :boundingbox=>[25, -14, 534, 676]}, 101=>{:wx=>444, :boundingbox=>[25, -14, 426, 473]}, 102=>{:wx=>333, :boundingbox=>[14, 0, 389, 691]}, 103=>{:wx=>500, :boundingbox=>[28, -206, 483, 473]}, 104=>{:wx=>556, :boundingbox=>[16, 0, 534, 676]}, 105=>{:wx=>278, :boundingbox=>[16, 0, 255, 691]}, 106=>{:wx=>333, :boundingbox=>[-57, -203, 263, 691]}, 107=>{:wx=>556, :boundingbox=>[22, 0, 543, 676]}, 108=>{:wx=>278, :boundingbox=>[16, 0, 255, 676]}, 109=>{:wx=>833, :boundingbox=>[16, 0, 814, 473]}, 110=>{:wx=>556, :boundingbox=>[21, 0, 539, 473]}, 111=>{:wx=>500, :boundingbox=>[25, -14, 476, 473]}, 112=>{:wx=>556, :boundingbox=>[19, -205, 524, 473]}, 113=>{:wx=>556, :boundingbox=>[34, -205, 536, 473]}, 114=>{:wx=>444, :boundingbox=>[29, 0, 434, 473]}, 115=>{:wx=>389, :boundingbox=>[25, -14, 361, 473]}, 116=>{:wx=>333, :boundingbox=>[20, -12, 332, 630]}, 117=>{:wx=>556, :boundingbox=>[16, -14, 537, 461]}, 118=>{:wx=>500, :boundingbox=>[21, -14, 485, 461]}, 119=>{:wx=>722, :boundingbox=>[23, -14, 707, 461]}, 120=>{:wx=>500, :boundingbox=>[12, 0, 484, 461]}, 121=>{:wx=>500, :boundingbox=>[16, -205, 480, 461]}, 122=>{:wx=>444, :boundingbox=>[21, 0, 420, 461]}, 123=>{:wx=>394, :boundingbox=>[22, -175, 340, 698]}, 124=>{:wx=>220, :boundingbox=>[66, -218, 154, 782]}, 125=>{:wx=>394, :boundingbox=>[54, -175, 372, 698]}, 126=>{:wx=>520, :boundingbox=>[29, 173, 491, 333]}, 161=>{:wx=>333, :boundingbox=>[82, -203, 252, 501]}, 162=>{:wx=>500, :boundingbox=>[53, -140, 458, 588]}, 163=>{:wx=>500, :boundingbox=>[21, -14, 477, 684]}, 164=>{:wx=>167, :boundingbox=>[-168, -12, 329, 688]}, 165=>{:wx=>500, :boundingbox=>[-64, 0, 547, 676]}, 166=>{:wx=>500, :boundingbox=>[0, -155, 498, 706]}, 167=>{:wx=>500, :boundingbox=>[57, -132, 443, 691]}, 168=>{:wx=>500, :boundingbox=>[-26, 61, 526, 613]}, 169=>{:wx=>278, :boundingbox=>[75, 404, 204, 691]}, 170=>{:wx=>500, :boundingbox=>[32, 356, 486, 691]}, 171=>{:wx=>500, :boundingbox=>[23, 36, 473, 415]}, 172=>{:wx=>333, :boundingbox=>[51, 36, 305, 415]}, 173=>{:wx=>333, :boundingbox=>[28, 36, 282, 415]}, 174=>{:wx=>556, :boundingbox=>[14, 0, 536, 691]}, 175=>{:wx=>556, :boundingbox=>[14, 0, 536, 691]}, 177=>{:wx=>500, :boundingbox=>[0, 181, 500, 271]}, 178=>{:wx=>500, :boundingbox=>[47, -134, 453, 691]}, 179=>{:wx=>500, :boundingbox=>[45, -132, 456, 691]}, 180=>{:wx=>250, :boundingbox=>[41, 248, 210, 417]}, 182=>{:wx=>540, :boundingbox=>[0, -186, 519, 676]}, 183=>{:wx=>350, :boundingbox=>[35, 198, 315, 478]}, 184=>{:wx=>333, :boundingbox=>[79, -180, 263, 155]}, 185=>{:wx=>500, :boundingbox=>[14, -180, 468, 155]}, 186=>{:wx=>500, :boundingbox=>[14, 356, 468, 691]}, 187=>{:wx=>500, :boundingbox=>[27, 36, 477, 415]}, 188=>{:wx=>1000, :boundingbox=>[82, -13, 917, 156]}, 189=>{:wx=>1000, :boundingbox=>[7, -29, 995, 706]}, 191=>{:wx=>500, :boundingbox=>[55, -201, 443, 501]}, 193=>{:wx=>333, :boundingbox=>[8, 528, 246, 713]}, 194=>{:wx=>333, :boundingbox=>[86, 528, 324, 713]}, 195=>{:wx=>333, :boundingbox=>[-2, 528, 335, 704]}, 196=>{:wx=>333, :boundingbox=>[-16, 547, 349, 674]}, 197=>{:wx=>333, :boundingbox=>[1, 565, 331, 637]}, 198=>{:wx=>333, :boundingbox=>[15, 528, 318, 691]}, 199=>{:wx=>333, :boundingbox=>[103, 536, 258, 691]}, 200=>{:wx=>333, :boundingbox=>[-2, 537, 335, 667]}, 202=>{:wx=>333, :boundingbox=>[60, 527, 273, 740]}, 203=>{:wx=>333, :boundingbox=>[68, -218, 294, 0]}, 205=>{:wx=>333, :boundingbox=>[-13, 528, 425, 713]}, 206=>{:wx=>333, :boundingbox=>[90, -193, 319, 24]}, 207=>{:wx=>333, :boundingbox=>[-2, 528, 335, 704]}, 208=>{:wx=>1000, :boundingbox=>[0, 181, 1000, 271]}, 225=>{:wx=>1000, :boundingbox=>[4, 0, 951, 676]}, 227=>{:wx=>300, :boundingbox=>[-1, 397, 301, 688]}, 232=>{:wx=>667, :boundingbox=>[19, 0, 638, 676]}, 233=>{:wx=>778, :boundingbox=>[35, -74, 743, 737]}, 234=>{:wx=>1000, :boundingbox=>[22, -5, 981, 684]}, 235=>{:wx=>330, :boundingbox=>[18, 397, 312, 688]}, 241=>{:wx=>722, :boundingbox=>[33, -14, 693, 473]}, 245=>{:wx=>278, :boundingbox=>[16, 0, 255, 461]}, 248=>{:wx=>278, :boundingbox=>[-22, 0, 303, 676]}, 249=>{:wx=>500, :boundingbox=>[25, -92, 476, 549]}, 250=>{:wx=>722, :boundingbox=>[22, -14, 696, 473]}, 251=>{:wx=>556, :boundingbox=>[19, -12, 517, 691]}, -1=>{:wx=>500, :boundingbox=>[0, 0, 0, 0]}}
125
+ times_italic_metrics = {32=>{:wx=>250, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>333, :boundingbox=>[39, -11, 302, 667]}, 34=>{:wx=>420, :boundingbox=>[144, 421, 432, 666]}, 35=>{:wx=>500, :boundingbox=>[2, 0, 540, 676]}, 36=>{:wx=>500, :boundingbox=>[31, -89, 497, 731]}, 37=>{:wx=>833, :boundingbox=>[79, -13, 790, 676]}, 38=>{:wx=>778, :boundingbox=>[76, -18, 723, 666]}, 39=>{:wx=>333, :boundingbox=>[151, 436, 290, 666]}, 40=>{:wx=>333, :boundingbox=>[42, -181, 315, 669]}, 41=>{:wx=>333, :boundingbox=>[16, -180, 289, 669]}, 42=>{:wx=>500, :boundingbox=>[128, 255, 492, 666]}, 43=>{:wx=>675, :boundingbox=>[86, 0, 590, 506]}, 44=>{:wx=>250, :boundingbox=>[-4, -129, 135, 101]}, 45=>{:wx=>333, :boundingbox=>[49, 192, 282, 255]}, 46=>{:wx=>250, :boundingbox=>[27, -11, 138, 100]}, 47=>{:wx=>278, :boundingbox=>[-65, -18, 386, 666]}, 48=>{:wx=>500, :boundingbox=>[32, -7, 497, 676]}, 49=>{:wx=>500, :boundingbox=>[49, 0, 409, 676]}, 50=>{:wx=>500, :boundingbox=>[12, 0, 452, 676]}, 51=>{:wx=>500, :boundingbox=>[15, -7, 465, 676]}, 52=>{:wx=>500, :boundingbox=>[1, 0, 479, 676]}, 53=>{:wx=>500, :boundingbox=>[15, -7, 491, 666]}, 54=>{:wx=>500, :boundingbox=>[30, -7, 521, 686]}, 55=>{:wx=>500, :boundingbox=>[75, -8, 537, 666]}, 56=>{:wx=>500, :boundingbox=>[30, -7, 493, 676]}, 57=>{:wx=>500, :boundingbox=>[23, -17, 492, 676]}, 58=>{:wx=>333, :boundingbox=>[50, -11, 261, 441]}, 59=>{:wx=>333, :boundingbox=>[27, -129, 261, 441]}, 60=>{:wx=>675, :boundingbox=>[84, -8, 592, 514]}, 61=>{:wx=>675, :boundingbox=>[86, 120, 590, 386]}, 62=>{:wx=>675, :boundingbox=>[84, -8, 592, 514]}, 63=>{:wx=>500, :boundingbox=>[132, -12, 472, 664]}, 64=>{:wx=>920, :boundingbox=>[118, -18, 806, 666]}, 65=>{:wx=>611, :boundingbox=>[-51, 0, 564, 668]}, 66=>{:wx=>611, :boundingbox=>[-8, 0, 588, 653]}, 67=>{:wx=>667, :boundingbox=>[66, -18, 689, 666]}, 68=>{:wx=>722, :boundingbox=>[-8, 0, 700, 653]}, 69=>{:wx=>611, :boundingbox=>[-1, 0, 634, 653]}, 70=>{:wx=>611, :boundingbox=>[8, 0, 645, 653]}, 71=>{:wx=>722, :boundingbox=>[52, -18, 722, 666]}, 72=>{:wx=>722, :boundingbox=>[-8, 0, 767, 653]}, 73=>{:wx=>333, :boundingbox=>[-8, 0, 384, 653]}, 74=>{:wx=>444, :boundingbox=>[-6, -18, 491, 653]}, 75=>{:wx=>667, :boundingbox=>[7, 0, 722, 653]}, 76=>{:wx=>556, :boundingbox=>[-8, 0, 559, 653]}, 77=>{:wx=>833, :boundingbox=>[-18, 0, 873, 653]}, 78=>{:wx=>667, :boundingbox=>[-20, -15, 727, 653]}, 79=>{:wx=>722, :boundingbox=>[60, -18, 699, 666]}, 80=>{:wx=>611, :boundingbox=>[0, 0, 605, 653]}, 81=>{:wx=>722, :boundingbox=>[59, -182, 699, 666]}, 82=>{:wx=>611, :boundingbox=>[-13, 0, 588, 653]}, 83=>{:wx=>500, :boundingbox=>[17, -18, 508, 667]}, 84=>{:wx=>556, :boundingbox=>[59, 0, 633, 653]}, 85=>{:wx=>722, :boundingbox=>[102, -18, 765, 653]}, 86=>{:wx=>611, :boundingbox=>[76, -18, 688, 653]}, 87=>{:wx=>833, :boundingbox=>[71, -18, 906, 653]}, 88=>{:wx=>611, :boundingbox=>[-29, 0, 655, 653]}, 89=>{:wx=>556, :boundingbox=>[78, 0, 633, 653]}, 90=>{:wx=>556, :boundingbox=>[-6, 0, 606, 653]}, 91=>{:wx=>389, :boundingbox=>[21, -153, 391, 663]}, 92=>{:wx=>278, :boundingbox=>[-41, -18, 319, 666]}, 93=>{:wx=>389, :boundingbox=>[12, -153, 382, 663]}, 94=>{:wx=>422, :boundingbox=>[0, 301, 422, 666]}, 95=>{:wx=>500, :boundingbox=>[0, -125, 500, -75]}, 96=>{:wx=>333, :boundingbox=>[171, 436, 310, 666]}, 97=>{:wx=>500, :boundingbox=>[17, -11, 476, 441]}, 98=>{:wx=>500, :boundingbox=>[23, -11, 473, 683]}, 99=>{:wx=>444, :boundingbox=>[30, -11, 425, 441]}, 100=>{:wx=>500, :boundingbox=>[15, -13, 527, 683]}, 101=>{:wx=>444, :boundingbox=>[31, -11, 412, 441]}, 102=>{:wx=>278, :boundingbox=>[-147, -207, 424, 678]}, 103=>{:wx=>500, :boundingbox=>[8, -206, 472, 441]}, 104=>{:wx=>500, :boundingbox=>[19, -9, 478, 683]}, 105=>{:wx=>278, :boundingbox=>[49, -11, 264, 654]}, 106=>{:wx=>278, :boundingbox=>[-124, -207, 276, 654]}, 107=>{:wx=>444, :boundingbox=>[14, -11, 461, 683]}, 108=>{:wx=>278, :boundingbox=>[41, -11, 279, 683]}, 109=>{:wx=>722, :boundingbox=>[12, -9, 704, 441]}, 110=>{:wx=>500, :boundingbox=>[14, -9, 474, 441]}, 111=>{:wx=>500, :boundingbox=>[27, -11, 468, 441]}, 112=>{:wx=>500, :boundingbox=>[-75, -205, 469, 441]}, 113=>{:wx=>500, :boundingbox=>[25, -209, 483, 441]}, 114=>{:wx=>389, :boundingbox=>[45, 0, 412, 441]}, 115=>{:wx=>389, :boundingbox=>[16, -13, 366, 442]}, 116=>{:wx=>278, :boundingbox=>[37, -11, 296, 546]}, 117=>{:wx=>500, :boundingbox=>[42, -11, 475, 441]}, 118=>{:wx=>444, :boundingbox=>[21, -18, 426, 441]}, 119=>{:wx=>667, :boundingbox=>[16, -18, 648, 441]}, 120=>{:wx=>444, :boundingbox=>[-27, -11, 447, 441]}, 121=>{:wx=>444, :boundingbox=>[-24, -206, 426, 441]}, 122=>{:wx=>389, :boundingbox=>[-2, -81, 380, 428]}, 123=>{:wx=>400, :boundingbox=>[51, -177, 407, 687]}, 124=>{:wx=>275, :boundingbox=>[105, -217, 171, 783]}, 125=>{:wx=>400, :boundingbox=>[-7, -177, 349, 687]}, 126=>{:wx=>541, :boundingbox=>[40, 183, 502, 323]}, 161=>{:wx=>389, :boundingbox=>[59, -205, 322, 473]}, 162=>{:wx=>500, :boundingbox=>[77, -143, 472, 560]}, 163=>{:wx=>500, :boundingbox=>[10, -6, 517, 670]}, 164=>{:wx=>167, :boundingbox=>[-169, -10, 337, 676]}, 165=>{:wx=>500, :boundingbox=>[27, 0, 603, 653]}, 166=>{:wx=>500, :boundingbox=>[25, -182, 507, 682]}, 167=>{:wx=>500, :boundingbox=>[53, -162, 461, 666]}, 168=>{:wx=>500, :boundingbox=>[-22, 53, 522, 597]}, 169=>{:wx=>214, :boundingbox=>[132, 421, 241, 666]}, 170=>{:wx=>556, :boundingbox=>[166, 436, 514, 666]}, 171=>{:wx=>500, :boundingbox=>[53, 37, 445, 403]}, 172=>{:wx=>333, :boundingbox=>[51, 37, 281, 403]}, 173=>{:wx=>333, :boundingbox=>[52, 37, 282, 403]}, 174=>{:wx=>500, :boundingbox=>[-141, -207, 481, 681]}, 175=>{:wx=>500, :boundingbox=>[-141, -204, 518, 682]}, 177=>{:wx=>500, :boundingbox=>[-6, 197, 505, 243]}, 178=>{:wx=>500, :boundingbox=>[101, -159, 488, 666]}, 179=>{:wx=>500, :boundingbox=>[22, -143, 491, 666]}, 180=>{:wx=>250, :boundingbox=>[70, 199, 181, 310]}, 182=>{:wx=>523, :boundingbox=>[55, -123, 616, 653]}, 183=>{:wx=>350, :boundingbox=>[40, 191, 310, 461]}, 184=>{:wx=>333, :boundingbox=>[44, -129, 183, 101]}, 185=>{:wx=>556, :boundingbox=>[57, -129, 405, 101]}, 186=>{:wx=>556, :boundingbox=>[151, 436, 499, 666]}, 187=>{:wx=>500, :boundingbox=>[55, 37, 447, 403]}, 188=>{:wx=>889, :boundingbox=>[57, -11, 762, 100]}, 189=>{:wx=>1000, :boundingbox=>[25, -19, 1010, 706]}, 191=>{:wx=>500, :boundingbox=>[28, -205, 368, 471]}, 193=>{:wx=>333, :boundingbox=>[121, 492, 311, 664]}, 194=>{:wx=>333, :boundingbox=>[180, 494, 403, 664]}, 195=>{:wx=>333, :boundingbox=>[91, 492, 385, 661]}, 196=>{:wx=>333, :boundingbox=>[100, 517, 427, 624]}, 197=>{:wx=>333, :boundingbox=>[99, 532, 411, 583]}, 198=>{:wx=>333, :boundingbox=>[117, 492, 418, 650]}, 199=>{:wx=>333, :boundingbox=>[207, 548, 305, 646]}, 200=>{:wx=>333, :boundingbox=>[107, 548, 405, 646]}, 202=>{:wx=>333, :boundingbox=>[155, 492, 355, 691]}, 203=>{:wx=>333, :boundingbox=>[-30, -217, 182, 0]}, 205=>{:wx=>333, :boundingbox=>[93, 494, 486, 664]}, 206=>{:wx=>333, :boundingbox=>[20, -169, 203, 40]}, 207=>{:wx=>333, :boundingbox=>[121, 492, 426, 661]}, 208=>{:wx=>889, :boundingbox=>[-6, 197, 894, 243]}, 225=>{:wx=>889, :boundingbox=>[-27, 0, 911, 653]}, 227=>{:wx=>276, :boundingbox=>[42, 406, 352, 676]}, 232=>{:wx=>556, :boundingbox=>[-8, 0, 559, 653]}, 233=>{:wx=>722, :boundingbox=>[60, -105, 699, 722]}, 234=>{:wx=>944, :boundingbox=>[49, -8, 964, 666]}, 235=>{:wx=>310, :boundingbox=>[67, 406, 362, 676]}, 241=>{:wx=>667, :boundingbox=>[23, -11, 640, 441]}, 245=>{:wx=>278, :boundingbox=>[49, -11, 235, 441]}, 248=>{:wx=>278, :boundingbox=>[41, -11, 312, 683]}, 249=>{:wx=>500, :boundingbox=>[28, -135, 469, 554]}, 250=>{:wx=>667, :boundingbox=>[20, -12, 646, 441]}, 251=>{:wx=>500, :boundingbox=>[-168, -207, 493, 679]}, -1=>{:wx=>500, :boundingbox=>[0, 0, 0, 0]}}
126
+ times_bolditalic_metrics = {32=>{:wx=>250, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>389, :boundingbox=>[67, -13, 370, 684]}, 34=>{:wx=>555, :boundingbox=>[136, 398, 536, 685]}, 35=>{:wx=>500, :boundingbox=>[-33, 0, 533, 700]}, 36=>{:wx=>500, :boundingbox=>[-20, -100, 497, 733]}, 37=>{:wx=>833, :boundingbox=>[39, -10, 793, 692]}, 38=>{:wx=>778, :boundingbox=>[5, -19, 699, 682]}, 39=>{:wx=>333, :boundingbox=>[98, 369, 302, 685]}, 40=>{:wx=>333, :boundingbox=>[28, -179, 344, 685]}, 41=>{:wx=>333, :boundingbox=>[-44, -179, 271, 685]}, 42=>{:wx=>500, :boundingbox=>[65, 249, 456, 685]}, 43=>{:wx=>570, :boundingbox=>[33, 0, 537, 506]}, 44=>{:wx=>250, :boundingbox=>[-60, -182, 144, 134]}, 45=>{:wx=>333, :boundingbox=>[2, 166, 271, 282]}, 46=>{:wx=>250, :boundingbox=>[-9, -13, 139, 135]}, 47=>{:wx=>278, :boundingbox=>[-64, -18, 342, 685]}, 48=>{:wx=>500, :boundingbox=>[17, -14, 477, 683]}, 49=>{:wx=>500, :boundingbox=>[5, 0, 419, 683]}, 50=>{:wx=>500, :boundingbox=>[-27, 0, 446, 683]}, 51=>{:wx=>500, :boundingbox=>[-15, -13, 450, 683]}, 52=>{:wx=>500, :boundingbox=>[-15, 0, 503, 683]}, 53=>{:wx=>500, :boundingbox=>[-11, -13, 487, 669]}, 54=>{:wx=>500, :boundingbox=>[23, -15, 509, 679]}, 55=>{:wx=>500, :boundingbox=>[52, 0, 525, 669]}, 56=>{:wx=>500, :boundingbox=>[3, -13, 476, 683]}, 57=>{:wx=>500, :boundingbox=>[-12, -10, 475, 683]}, 58=>{:wx=>333, :boundingbox=>[23, -13, 264, 459]}, 59=>{:wx=>333, :boundingbox=>[-25, -183, 264, 459]}, 60=>{:wx=>570, :boundingbox=>[31, -8, 539, 514]}, 61=>{:wx=>570, :boundingbox=>[33, 107, 537, 399]}, 62=>{:wx=>570, :boundingbox=>[31, -8, 539, 514]}, 63=>{:wx=>500, :boundingbox=>[79, -13, 470, 684]}, 64=>{:wx=>832, :boundingbox=>[63, -18, 770, 685]}, 65=>{:wx=>667, :boundingbox=>[-67, 0, 593, 683]}, 66=>{:wx=>667, :boundingbox=>[-24, 0, 624, 669]}, 67=>{:wx=>667, :boundingbox=>[32, -18, 677, 685]}, 68=>{:wx=>722, :boundingbox=>[-46, 0, 685, 669]}, 69=>{:wx=>667, :boundingbox=>[-27, 0, 653, 669]}, 70=>{:wx=>667, :boundingbox=>[-13, 0, 660, 669]}, 71=>{:wx=>722, :boundingbox=>[21, -18, 706, 685]}, 72=>{:wx=>778, :boundingbox=>[-24, 0, 799, 669]}, 73=>{:wx=>389, :boundingbox=>[-32, 0, 406, 669]}, 74=>{:wx=>500, :boundingbox=>[-46, -99, 524, 669]}, 75=>{:wx=>667, :boundingbox=>[-21, 0, 702, 669]}, 76=>{:wx=>611, :boundingbox=>[-22, 0, 590, 669]}, 77=>{:wx=>889, :boundingbox=>[-29, -12, 917, 669]}, 78=>{:wx=>722, :boundingbox=>[-27, -15, 748, 669]}, 79=>{:wx=>722, :boundingbox=>[27, -18, 691, 685]}, 80=>{:wx=>611, :boundingbox=>[-27, 0, 613, 669]}, 81=>{:wx=>722, :boundingbox=>[27, -208, 691, 685]}, 82=>{:wx=>667, :boundingbox=>[-29, 0, 623, 669]}, 83=>{:wx=>556, :boundingbox=>[2, -18, 526, 685]}, 84=>{:wx=>611, :boundingbox=>[50, 0, 650, 669]}, 85=>{:wx=>722, :boundingbox=>[67, -18, 744, 669]}, 86=>{:wx=>667, :boundingbox=>[65, -18, 715, 669]}, 87=>{:wx=>889, :boundingbox=>[65, -18, 940, 669]}, 88=>{:wx=>667, :boundingbox=>[-24, 0, 694, 669]}, 89=>{:wx=>611, :boundingbox=>[73, 0, 659, 669]}, 90=>{:wx=>611, :boundingbox=>[-11, 0, 590, 669]}, 91=>{:wx=>333, :boundingbox=>[-37, -159, 362, 674]}, 92=>{:wx=>278, :boundingbox=>[-1, -18, 279, 685]}, 93=>{:wx=>333, :boundingbox=>[-56, -157, 343, 674]}, 94=>{:wx=>570, :boundingbox=>[67, 304, 503, 669]}, 95=>{:wx=>500, :boundingbox=>[0, -125, 500, -75]}, 96=>{:wx=>333, :boundingbox=>[128, 369, 332, 685]}, 97=>{:wx=>500, :boundingbox=>[-21, -14, 455, 462]}, 98=>{:wx=>500, :boundingbox=>[-14, -13, 444, 699]}, 99=>{:wx=>444, :boundingbox=>[-5, -13, 392, 462]}, 100=>{:wx=>500, :boundingbox=>[-21, -13, 517, 699]}, 101=>{:wx=>444, :boundingbox=>[5, -13, 398, 462]}, 102=>{:wx=>333, :boundingbox=>[-169, -205, 446, 698]}, 103=>{:wx=>500, :boundingbox=>[-52, -203, 478, 462]}, 104=>{:wx=>556, :boundingbox=>[-13, -9, 498, 699]}, 105=>{:wx=>278, :boundingbox=>[2, -9, 263, 684]}, 106=>{:wx=>278, :boundingbox=>[-189, -207, 279, 684]}, 107=>{:wx=>500, :boundingbox=>[-23, -8, 483, 699]}, 108=>{:wx=>278, :boundingbox=>[2, -9, 290, 699]}, 109=>{:wx=>778, :boundingbox=>[-14, -9, 722, 462]}, 110=>{:wx=>556, :boundingbox=>[-6, -9, 493, 462]}, 111=>{:wx=>500, :boundingbox=>[-3, -13, 441, 462]}, 112=>{:wx=>500, :boundingbox=>[-120, -205, 446, 462]}, 113=>{:wx=>500, :boundingbox=>[1, -205, 471, 462]}, 114=>{:wx=>389, :boundingbox=>[-21, 0, 389, 462]}, 115=>{:wx=>389, :boundingbox=>[-19, -13, 333, 462]}, 116=>{:wx=>278, :boundingbox=>[-11, -9, 281, 594]}, 117=>{:wx=>556, :boundingbox=>[15, -9, 492, 462]}, 118=>{:wx=>444, :boundingbox=>[16, -13, 401, 462]}, 119=>{:wx=>667, :boundingbox=>[16, -13, 614, 462]}, 120=>{:wx=>500, :boundingbox=>[-46, -13, 469, 462]}, 121=>{:wx=>444, :boundingbox=>[-94, -205, 392, 462]}, 122=>{:wx=>389, :boundingbox=>[-43, -78, 368, 449]}, 123=>{:wx=>348, :boundingbox=>[5, -187, 436, 686]}, 124=>{:wx=>220, :boundingbox=>[66, -218, 154, 782]}, 125=>{:wx=>348, :boundingbox=>[-129, -187, 302, 686]}, 126=>{:wx=>570, :boundingbox=>[54, 173, 516, 333]}, 161=>{:wx=>389, :boundingbox=>[19, -205, 322, 492]}, 162=>{:wx=>500, :boundingbox=>[42, -143, 439, 576]}, 163=>{:wx=>500, :boundingbox=>[-32, -12, 510, 683]}, 164=>{:wx=>167, :boundingbox=>[-169, -14, 324, 683]}, 165=>{:wx=>500, :boundingbox=>[33, 0, 628, 669]}, 166=>{:wx=>500, :boundingbox=>[-87, -156, 537, 707]}, 167=>{:wx=>500, :boundingbox=>[36, -143, 459, 685]}, 168=>{:wx=>500, :boundingbox=>[-26, 34, 526, 586]}, 169=>{:wx=>278, :boundingbox=>[128, 398, 268, 685]}, 170=>{:wx=>500, :boundingbox=>[53, 369, 513, 685]}, 171=>{:wx=>500, :boundingbox=>[12, 32, 468, 415]}, 172=>{:wx=>333, :boundingbox=>[32, 32, 303, 415]}, 173=>{:wx=>333, :boundingbox=>[10, 32, 281, 415]}, 174=>{:wx=>556, :boundingbox=>[-188, -205, 514, 703]}, 175=>{:wx=>556, :boundingbox=>[-186, -205, 553, 704]}, 177=>{:wx=>500, :boundingbox=>[-40, 178, 477, 269]}, 178=>{:wx=>500, :boundingbox=>[91, -145, 494, 685]}, 179=>{:wx=>500, :boundingbox=>[10, -139, 493, 685]}, 180=>{:wx=>250, :boundingbox=>[51, 257, 199, 405]}, 182=>{:wx=>500, :boundingbox=>[-57, -193, 562, 669]}, 183=>{:wx=>350, :boundingbox=>[0, 175, 350, 525]}, 184=>{:wx=>333, :boundingbox=>[-5, -182, 199, 134]}, 185=>{:wx=>500, :boundingbox=>[-57, -182, 403, 134]}, 186=>{:wx=>500, :boundingbox=>[53, 369, 513, 685]}, 187=>{:wx=>500, :boundingbox=>[12, 32, 468, 415]}, 188=>{:wx=>1000, :boundingbox=>[40, -13, 852, 135]}, 189=>{:wx=>1000, :boundingbox=>[7, -29, 996, 706]}, 191=>{:wx=>500, :boundingbox=>[30, -205, 421, 492]}, 193=>{:wx=>333, :boundingbox=>[85, 516, 297, 697]}, 194=>{:wx=>333, :boundingbox=>[139, 516, 379, 697]}, 195=>{:wx=>333, :boundingbox=>[40, 516, 367, 690]}, 196=>{:wx=>333, :boundingbox=>[48, 536, 407, 655]}, 197=>{:wx=>333, :boundingbox=>[51, 553, 393, 623]}, 198=>{:wx=>333, :boundingbox=>[71, 516, 387, 678]}, 199=>{:wx=>333, :boundingbox=>[163, 550, 298, 684]}, 200=>{:wx=>333, :boundingbox=>[55, 550, 402, 684]}, 202=>{:wx=>333, :boundingbox=>[127, 516, 340, 729]}, 203=>{:wx=>333, :boundingbox=>[-80, -218, 156, 5]}, 205=>{:wx=>333, :boundingbox=>[69, 516, 498, 697]}, 206=>{:wx=>333, :boundingbox=>[15, -183, 244, 34]}, 207=>{:wx=>333, :boundingbox=>[79, 516, 411, 690]}, 208=>{:wx=>1000, :boundingbox=>[-40, 178, 977, 269]}, 225=>{:wx=>944, :boundingbox=>[-64, 0, 918, 669]}, 227=>{:wx=>266, :boundingbox=>[16, 399, 330, 685]}, 232=>{:wx=>611, :boundingbox=>[-22, 0, 590, 669]}, 233=>{:wx=>722, :boundingbox=>[27, -125, 691, 764]}, 234=>{:wx=>944, :boundingbox=>[23, -8, 946, 677]}, 235=>{:wx=>300, :boundingbox=>[56, 400, 347, 685]}, 241=>{:wx=>722, :boundingbox=>[-5, -13, 673, 462]}, 245=>{:wx=>278, :boundingbox=>[2, -9, 238, 462]}, 248=>{:wx=>278, :boundingbox=>[-7, -9, 307, 699]}, 249=>{:wx=>500, :boundingbox=>[-3, -119, 441, 560]}, 250=>{:wx=>722, :boundingbox=>[6, -13, 674, 462]}, 251=>{:wx=>500, :boundingbox=>[-200, -200, 473, 705]}, -1=>{:wx=>500, :boundingbox=>[0, 0, 0, 0]}}
127
+ helvetica_metrics = {32=>{:wx=>278, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>278, :boundingbox=>[90, 0, 187, 718]}, 34=>{:wx=>355, :boundingbox=>[70, 463, 285, 718]}, 35=>{:wx=>556, :boundingbox=>[28, 0, 529, 688]}, 36=>{:wx=>556, :boundingbox=>[32, -115, 520, 775]}, 37=>{:wx=>889, :boundingbox=>[39, -19, 850, 703]}, 38=>{:wx=>667, :boundingbox=>[44, -15, 645, 718]}, 39=>{:wx=>222, :boundingbox=>[53, 463, 157, 718]}, 40=>{:wx=>333, :boundingbox=>[68, -207, 299, 733]}, 41=>{:wx=>333, :boundingbox=>[34, -207, 265, 733]}, 42=>{:wx=>389, :boundingbox=>[39, 431, 349, 718]}, 43=>{:wx=>584, :boundingbox=>[39, 0, 545, 505]}, 44=>{:wx=>278, :boundingbox=>[87, -147, 191, 106]}, 45=>{:wx=>333, :boundingbox=>[44, 232, 289, 322]}, 46=>{:wx=>278, :boundingbox=>[87, 0, 191, 106]}, 47=>{:wx=>278, :boundingbox=>[-17, -19, 295, 737]}, 48=>{:wx=>556, :boundingbox=>[37, -19, 519, 703]}, 49=>{:wx=>556, :boundingbox=>[101, 0, 359, 703]}, 50=>{:wx=>556, :boundingbox=>[26, 0, 507, 703]}, 51=>{:wx=>556, :boundingbox=>[34, -19, 522, 703]}, 52=>{:wx=>556, :boundingbox=>[25, 0, 523, 703]}, 53=>{:wx=>556, :boundingbox=>[32, -19, 514, 688]}, 54=>{:wx=>556, :boundingbox=>[38, -19, 518, 703]}, 55=>{:wx=>556, :boundingbox=>[37, 0, 523, 688]}, 56=>{:wx=>556, :boundingbox=>[38, -19, 517, 703]}, 57=>{:wx=>556, :boundingbox=>[42, -19, 514, 703]}, 58=>{:wx=>278, :boundingbox=>[87, 0, 191, 516]}, 59=>{:wx=>278, :boundingbox=>[87, -147, 191, 516]}, 60=>{:wx=>584, :boundingbox=>[48, 11, 536, 495]}, 61=>{:wx=>584, :boundingbox=>[39, 115, 545, 390]}, 62=>{:wx=>584, :boundingbox=>[48, 11, 536, 495]}, 63=>{:wx=>556, :boundingbox=>[56, 0, 492, 727]}, 64=>{:wx=>1015, :boundingbox=>[147, -19, 868, 737]}, 65=>{:wx=>667, :boundingbox=>[14, 0, 654, 718]}, 66=>{:wx=>667, :boundingbox=>[74, 0, 627, 718]}, 67=>{:wx=>722, :boundingbox=>[44, -19, 681, 737]}, 68=>{:wx=>722, :boundingbox=>[81, 0, 674, 718]}, 69=>{:wx=>667, :boundingbox=>[86, 0, 616, 718]}, 70=>{:wx=>611, :boundingbox=>[86, 0, 583, 718]}, 71=>{:wx=>778, :boundingbox=>[48, -19, 704, 737]}, 72=>{:wx=>722, :boundingbox=>[77, 0, 646, 718]}, 73=>{:wx=>278, :boundingbox=>[91, 0, 188, 718]}, 74=>{:wx=>500, :boundingbox=>[17, -19, 428, 718]}, 75=>{:wx=>667, :boundingbox=>[76, 0, 663, 718]}, 76=>{:wx=>556, :boundingbox=>[76, 0, 537, 718]}, 77=>{:wx=>833, :boundingbox=>[73, 0, 761, 718]}, 78=>{:wx=>722, :boundingbox=>[76, 0, 646, 718]}, 79=>{:wx=>778, :boundingbox=>[39, -19, 739, 737]}, 80=>{:wx=>667, :boundingbox=>[86, 0, 622, 718]}, 81=>{:wx=>778, :boundingbox=>[39, -56, 739, 737]}, 82=>{:wx=>722, :boundingbox=>[88, 0, 684, 718]}, 83=>{:wx=>667, :boundingbox=>[49, -19, 620, 737]}, 84=>{:wx=>611, :boundingbox=>[14, 0, 597, 718]}, 85=>{:wx=>722, :boundingbox=>[79, -19, 644, 718]}, 86=>{:wx=>667, :boundingbox=>[20, 0, 647, 718]}, 87=>{:wx=>944, :boundingbox=>[16, 0, 928, 718]}, 88=>{:wx=>667, :boundingbox=>[19, 0, 648, 718]}, 89=>{:wx=>667, :boundingbox=>[14, 0, 653, 718]}, 90=>{:wx=>611, :boundingbox=>[23, 0, 588, 718]}, 91=>{:wx=>278, :boundingbox=>[63, -196, 250, 722]}, 92=>{:wx=>278, :boundingbox=>[-17, -19, 295, 737]}, 93=>{:wx=>278, :boundingbox=>[28, -196, 215, 722]}, 94=>{:wx=>469, :boundingbox=>[-14, 264, 483, 688]}, 95=>{:wx=>556, :boundingbox=>[0, -125, 556, -75]}, 96=>{:wx=>222, :boundingbox=>[65, 470, 169, 725]}, 97=>{:wx=>556, :boundingbox=>[36, -15, 530, 538]}, 98=>{:wx=>556, :boundingbox=>[58, -15, 517, 718]}, 99=>{:wx=>500, :boundingbox=>[30, -15, 477, 538]}, 100=>{:wx=>556, :boundingbox=>[35, -15, 499, 718]}, 101=>{:wx=>556, :boundingbox=>[40, -15, 516, 538]}, 102=>{:wx=>278, :boundingbox=>[14, 0, 262, 728]}, 103=>{:wx=>556, :boundingbox=>[40, -220, 499, 538]}, 104=>{:wx=>556, :boundingbox=>[65, 0, 491, 718]}, 105=>{:wx=>222, :boundingbox=>[67, 0, 155, 718]}, 106=>{:wx=>222, :boundingbox=>[-16, -210, 155, 718]}, 107=>{:wx=>500, :boundingbox=>[67, 0, 501, 718]}, 108=>{:wx=>222, :boundingbox=>[67, 0, 155, 718]}, 109=>{:wx=>833, :boundingbox=>[65, 0, 769, 538]}, 110=>{:wx=>556, :boundingbox=>[65, 0, 491, 538]}, 111=>{:wx=>556, :boundingbox=>[35, -14, 521, 538]}, 112=>{:wx=>556, :boundingbox=>[58, -207, 517, 538]}, 113=>{:wx=>556, :boundingbox=>[35, -207, 494, 538]}, 114=>{:wx=>333, :boundingbox=>[77, 0, 332, 538]}, 115=>{:wx=>500, :boundingbox=>[32, -15, 464, 538]}, 116=>{:wx=>278, :boundingbox=>[14, -7, 257, 669]}, 117=>{:wx=>556, :boundingbox=>[68, -15, 489, 523]}, 118=>{:wx=>500, :boundingbox=>[8, 0, 492, 523]}, 119=>{:wx=>722, :boundingbox=>[14, 0, 709, 523]}, 120=>{:wx=>500, :boundingbox=>[11, 0, 490, 523]}, 121=>{:wx=>500, :boundingbox=>[11, -214, 489, 523]}, 122=>{:wx=>500, :boundingbox=>[31, 0, 469, 523]}, 123=>{:wx=>334, :boundingbox=>[42, -196, 292, 722]}, 124=>{:wx=>260, :boundingbox=>[94, -225, 167, 775]}, 125=>{:wx=>334, :boundingbox=>[42, -196, 292, 722]}, 126=>{:wx=>584, :boundingbox=>[61, 180, 523, 326]}, 161=>{:wx=>333, :boundingbox=>[118, -195, 215, 523]}, 162=>{:wx=>556, :boundingbox=>[51, -115, 513, 623]}, 163=>{:wx=>556, :boundingbox=>[33, -16, 539, 718]}, 164=>{:wx=>167, :boundingbox=>[-166, -19, 333, 703]}, 165=>{:wx=>556, :boundingbox=>[3, 0, 553, 688]}, 166=>{:wx=>556, :boundingbox=>[-11, -207, 501, 737]}, 167=>{:wx=>556, :boundingbox=>[43, -191, 512, 737]}, 168=>{:wx=>556, :boundingbox=>[28, 99, 528, 603]}, 169=>{:wx=>191, :boundingbox=>[59, 463, 132, 718]}, 170=>{:wx=>333, :boundingbox=>[38, 470, 307, 725]}, 171=>{:wx=>556, :boundingbox=>[97, 108, 459, 446]}, 172=>{:wx=>333, :boundingbox=>[88, 108, 245, 446]}, 173=>{:wx=>333, :boundingbox=>[88, 108, 245, 446]}, 174=>{:wx=>500, :boundingbox=>[14, 0, 434, 728]}, 175=>{:wx=>500, :boundingbox=>[14, 0, 432, 728]}, 177=>{:wx=>556, :boundingbox=>[0, 240, 556, 313]}, 178=>{:wx=>556, :boundingbox=>[43, -159, 514, 718]}, 179=>{:wx=>556, :boundingbox=>[43, -159, 514, 718]}, 180=>{:wx=>278, :boundingbox=>[77, 190, 202, 315]}, 182=>{:wx=>537, :boundingbox=>[18, -173, 497, 718]}, 183=>{:wx=>350, :boundingbox=>[18, 202, 333, 517]}, 184=>{:wx=>222, :boundingbox=>[53, -149, 157, 106]}, 185=>{:wx=>333, :boundingbox=>[26, -149, 295, 106]}, 186=>{:wx=>333, :boundingbox=>[26, 463, 295, 718]}, 187=>{:wx=>556, :boundingbox=>[97, 108, 459, 446]}, 188=>{:wx=>1000, :boundingbox=>[115, 0, 885, 106]}, 189=>{:wx=>1000, :boundingbox=>[7, -19, 994, 703]}, 191=>{:wx=>611, :boundingbox=>[91, -201, 527, 525]}, 193=>{:wx=>333, :boundingbox=>[14, 593, 211, 734]}, 194=>{:wx=>333, :boundingbox=>[122, 593, 319, 734]}, 195=>{:wx=>333, :boundingbox=>[21, 593, 312, 734]}, 196=>{:wx=>333, :boundingbox=>[-4, 606, 337, 722]}, 197=>{:wx=>333, :boundingbox=>[10, 627, 323, 684]}, 198=>{:wx=>333, :boundingbox=>[13, 595, 321, 731]}, 199=>{:wx=>333, :boundingbox=>[121, 604, 212, 706]}, 200=>{:wx=>333, :boundingbox=>[40, 604, 293, 706]}, 202=>{:wx=>333, :boundingbox=>[75, 572, 259, 756]}, 203=>{:wx=>333, :boundingbox=>[45, -225, 259, 0]}, 205=>{:wx=>333, :boundingbox=>[31, 593, 409, 734]}, 206=>{:wx=>333, :boundingbox=>[73, -225, 287, 0]}, 207=>{:wx=>333, :boundingbox=>[21, 593, 312, 734]}, 208=>{:wx=>1000, :boundingbox=>[0, 240, 1000, 313]}, 225=>{:wx=>1000, :boundingbox=>[8, 0, 951, 718]}, 227=>{:wx=>370, :boundingbox=>[24, 405, 346, 737]}, 232=>{:wx=>556, :boundingbox=>[-20, 0, 537, 718]}, 233=>{:wx=>778, :boundingbox=>[39, -19, 740, 737]}, 234=>{:wx=>1000, :boundingbox=>[36, -19, 965, 737]}, 235=>{:wx=>365, :boundingbox=>[25, 405, 341, 737]}, 241=>{:wx=>889, :boundingbox=>[36, -15, 847, 538]}, 245=>{:wx=>278, :boundingbox=>[95, 0, 183, 523]}, 248=>{:wx=>222, :boundingbox=>[-20, 0, 242, 718]}, 249=>{:wx=>611, :boundingbox=>[28, -22, 537, 545]}, 250=>{:wx=>944, :boundingbox=>[35, -15, 902, 538]}, 251=>{:wx=>611, :boundingbox=>[67, -15, 571, 728]}, -1=>{:wx=>556, :boundingbox=>[0, 0, 0, 0]}}
128
+ helvetica_bold_metrics = {32=>{:wx=>278, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>333, :boundingbox=>[90, 0, 244, 718]}, 34=>{:wx=>474, :boundingbox=>[98, 447, 376, 718]}, 35=>{:wx=>556, :boundingbox=>[18, 0, 538, 698]}, 36=>{:wx=>556, :boundingbox=>[30, -115, 523, 775]}, 37=>{:wx=>889, :boundingbox=>[28, -19, 861, 710]}, 38=>{:wx=>722, :boundingbox=>[54, -19, 701, 718]}, 39=>{:wx=>278, :boundingbox=>[69, 445, 209, 718]}, 40=>{:wx=>333, :boundingbox=>[35, -208, 314, 734]}, 41=>{:wx=>333, :boundingbox=>[19, -208, 298, 734]}, 42=>{:wx=>389, :boundingbox=>[27, 387, 362, 718]}, 43=>{:wx=>584, :boundingbox=>[40, 0, 544, 506]}, 44=>{:wx=>278, :boundingbox=>[64, -168, 214, 146]}, 45=>{:wx=>333, :boundingbox=>[27, 215, 306, 345]}, 46=>{:wx=>278, :boundingbox=>[64, 0, 214, 146]}, 47=>{:wx=>278, :boundingbox=>[-33, -19, 311, 737]}, 48=>{:wx=>556, :boundingbox=>[32, -19, 524, 710]}, 49=>{:wx=>556, :boundingbox=>[69, 0, 378, 710]}, 50=>{:wx=>556, :boundingbox=>[26, 0, 511, 710]}, 51=>{:wx=>556, :boundingbox=>[27, -19, 516, 710]}, 52=>{:wx=>556, :boundingbox=>[27, 0, 526, 710]}, 53=>{:wx=>556, :boundingbox=>[27, -19, 516, 698]}, 54=>{:wx=>556, :boundingbox=>[31, -19, 520, 710]}, 55=>{:wx=>556, :boundingbox=>[25, 0, 528, 698]}, 56=>{:wx=>556, :boundingbox=>[32, -19, 524, 710]}, 57=>{:wx=>556, :boundingbox=>[30, -19, 522, 710]}, 58=>{:wx=>333, :boundingbox=>[92, 0, 242, 512]}, 59=>{:wx=>333, :boundingbox=>[92, -168, 242, 512]}, 60=>{:wx=>584, :boundingbox=>[38, -8, 546, 514]}, 61=>{:wx=>584, :boundingbox=>[40, 87, 544, 419]}, 62=>{:wx=>584, :boundingbox=>[38, -8, 546, 514]}, 63=>{:wx=>611, :boundingbox=>[60, 0, 556, 727]}, 64=>{:wx=>975, :boundingbox=>[118, -19, 856, 737]}, 65=>{:wx=>722, :boundingbox=>[20, 0, 702, 718]}, 66=>{:wx=>722, :boundingbox=>[76, 0, 669, 718]}, 67=>{:wx=>722, :boundingbox=>[44, -19, 684, 737]}, 68=>{:wx=>722, :boundingbox=>[76, 0, 685, 718]}, 69=>{:wx=>667, :boundingbox=>[76, 0, 621, 718]}, 70=>{:wx=>611, :boundingbox=>[76, 0, 587, 718]}, 71=>{:wx=>778, :boundingbox=>[44, -19, 713, 737]}, 72=>{:wx=>722, :boundingbox=>[71, 0, 651, 718]}, 73=>{:wx=>278, :boundingbox=>[64, 0, 214, 718]}, 74=>{:wx=>556, :boundingbox=>[22, -18, 484, 718]}, 75=>{:wx=>722, :boundingbox=>[87, 0, 722, 718]}, 76=>{:wx=>611, :boundingbox=>[76, 0, 583, 718]}, 77=>{:wx=>833, :boundingbox=>[69, 0, 765, 718]}, 78=>{:wx=>722, :boundingbox=>[69, 0, 654, 718]}, 79=>{:wx=>778, :boundingbox=>[44, -19, 734, 737]}, 80=>{:wx=>667, :boundingbox=>[76, 0, 627, 718]}, 81=>{:wx=>778, :boundingbox=>[44, -52, 737, 737]}, 82=>{:wx=>722, :boundingbox=>[76, 0, 677, 718]}, 83=>{:wx=>667, :boundingbox=>[39, -19, 629, 737]}, 84=>{:wx=>611, :boundingbox=>[14, 0, 598, 718]}, 85=>{:wx=>722, :boundingbox=>[72, -19, 651, 718]}, 86=>{:wx=>667, :boundingbox=>[19, 0, 648, 718]}, 87=>{:wx=>944, :boundingbox=>[16, 0, 929, 718]}, 88=>{:wx=>667, :boundingbox=>[14, 0, 653, 718]}, 89=>{:wx=>667, :boundingbox=>[15, 0, 653, 718]}, 90=>{:wx=>611, :boundingbox=>[25, 0, 586, 718]}, 91=>{:wx=>333, :boundingbox=>[63, -196, 309, 722]}, 92=>{:wx=>278, :boundingbox=>[-33, -19, 311, 737]}, 93=>{:wx=>333, :boundingbox=>[24, -196, 270, 722]}, 94=>{:wx=>584, :boundingbox=>[62, 323, 522, 698]}, 95=>{:wx=>556, :boundingbox=>[0, -125, 556, -75]}, 96=>{:wx=>278, :boundingbox=>[69, 454, 209, 727]}, 97=>{:wx=>556, :boundingbox=>[29, -14, 527, 546]}, 98=>{:wx=>611, :boundingbox=>[61, -14, 578, 718]}, 99=>{:wx=>556, :boundingbox=>[34, -14, 524, 546]}, 100=>{:wx=>611, :boundingbox=>[34, -14, 551, 718]}, 101=>{:wx=>556, :boundingbox=>[23, -14, 528, 546]}, 102=>{:wx=>333, :boundingbox=>[10, 0, 318, 727]}, 103=>{:wx=>611, :boundingbox=>[40, -217, 553, 546]}, 104=>{:wx=>611, :boundingbox=>[65, 0, 546, 718]}, 105=>{:wx=>278, :boundingbox=>[69, 0, 209, 725]}, 106=>{:wx=>278, :boundingbox=>[3, -214, 209, 725]}, 107=>{:wx=>556, :boundingbox=>[69, 0, 562, 718]}, 108=>{:wx=>278, :boundingbox=>[69, 0, 209, 718]}, 109=>{:wx=>889, :boundingbox=>[64, 0, 826, 546]}, 110=>{:wx=>611, :boundingbox=>[65, 0, 546, 546]}, 111=>{:wx=>611, :boundingbox=>[34, -14, 578, 546]}, 112=>{:wx=>611, :boundingbox=>[62, -207, 578, 546]}, 113=>{:wx=>611, :boundingbox=>[34, -207, 552, 546]}, 114=>{:wx=>389, :boundingbox=>[64, 0, 373, 546]}, 115=>{:wx=>556, :boundingbox=>[30, -14, 519, 546]}, 116=>{:wx=>333, :boundingbox=>[10, -6, 309, 676]}, 117=>{:wx=>611, :boundingbox=>[66, -14, 545, 532]}, 118=>{:wx=>556, :boundingbox=>[13, 0, 543, 532]}, 119=>{:wx=>778, :boundingbox=>[10, 0, 769, 532]}, 120=>{:wx=>556, :boundingbox=>[15, 0, 541, 532]}, 121=>{:wx=>556, :boundingbox=>[10, -214, 539, 532]}, 122=>{:wx=>500, :boundingbox=>[20, 0, 480, 532]}, 123=>{:wx=>389, :boundingbox=>[48, -196, 365, 722]}, 124=>{:wx=>280, :boundingbox=>[84, -225, 196, 775]}, 125=>{:wx=>389, :boundingbox=>[24, -196, 341, 722]}, 126=>{:wx=>584, :boundingbox=>[61, 163, 523, 343]}, 161=>{:wx=>333, :boundingbox=>[90, -186, 244, 532]}, 162=>{:wx=>556, :boundingbox=>[34, -118, 524, 628]}, 163=>{:wx=>556, :boundingbox=>[28, -16, 541, 718]}, 164=>{:wx=>167, :boundingbox=>[-170, -19, 336, 710]}, 165=>{:wx=>556, :boundingbox=>[-9, 0, 565, 698]}, 166=>{:wx=>556, :boundingbox=>[-10, -210, 516, 737]}, 167=>{:wx=>556, :boundingbox=>[34, -184, 522, 727]}, 168=>{:wx=>556, :boundingbox=>[-3, 76, 559, 636]}, 169=>{:wx=>238, :boundingbox=>[70, 447, 168, 718]}, 170=>{:wx=>500, :boundingbox=>[64, 454, 436, 727]}, 171=>{:wx=>556, :boundingbox=>[88, 76, 468, 484]}, 172=>{:wx=>333, :boundingbox=>[83, 76, 250, 484]}, 173=>{:wx=>333, :boundingbox=>[83, 76, 250, 484]}, 174=>{:wx=>611, :boundingbox=>[10, 0, 542, 727]}, 175=>{:wx=>611, :boundingbox=>[10, 0, 542, 727]}, 177=>{:wx=>556, :boundingbox=>[0, 227, 556, 333]}, 178=>{:wx=>556, :boundingbox=>[36, -171, 520, 718]}, 179=>{:wx=>556, :boundingbox=>[36, -171, 520, 718]}, 180=>{:wx=>278, :boundingbox=>[58, 172, 220, 334]}, 182=>{:wx=>556, :boundingbox=>[-8, -191, 539, 700]}, 183=>{:wx=>350, :boundingbox=>[10, 194, 340, 524]}, 184=>{:wx=>278, :boundingbox=>[69, -146, 209, 127]}, 185=>{:wx=>500, :boundingbox=>[64, -146, 436, 127]}, 186=>{:wx=>500, :boundingbox=>[64, 445, 436, 718]}, 187=>{:wx=>556, :boundingbox=>[88, 76, 468, 484]}, 188=>{:wx=>1000, :boundingbox=>[92, 0, 908, 146]}, 189=>{:wx=>1000, :boundingbox=>[-3, -19, 1003, 710]}, 191=>{:wx=>611, :boundingbox=>[55, -195, 551, 532]}, 193=>{:wx=>333, :boundingbox=>[-23, 604, 225, 750]}, 194=>{:wx=>333, :boundingbox=>[108, 604, 356, 750]}, 195=>{:wx=>333, :boundingbox=>[-10, 604, 343, 750]}, 196=>{:wx=>333, :boundingbox=>[-17, 610, 350, 737]}, 197=>{:wx=>333, :boundingbox=>[-6, 604, 339, 678]}, 198=>{:wx=>333, :boundingbox=>[-2, 604, 335, 750]}, 199=>{:wx=>333, :boundingbox=>[104, 614, 230, 729]}, 200=>{:wx=>333, :boundingbox=>[6, 614, 327, 729]}, 202=>{:wx=>333, :boundingbox=>[59, 568, 275, 776]}, 203=>{:wx=>333, :boundingbox=>[6, -228, 245, 0]}, 205=>{:wx=>333, :boundingbox=>[9, 604, 486, 750]}, 206=>{:wx=>333, :boundingbox=>[71, -228, 304, 0]}, 207=>{:wx=>333, :boundingbox=>[-10, 604, 343, 750]}, 208=>{:wx=>1000, :boundingbox=>[0, 227, 1000, 333]}, 225=>{:wx=>1000, :boundingbox=>[5, 0, 954, 718]}, 227=>{:wx=>370, :boundingbox=>[22, 401, 347, 737]}, 232=>{:wx=>611, :boundingbox=>[-20, 0, 583, 718]}, 233=>{:wx=>778, :boundingbox=>[33, -27, 744, 745]}, 234=>{:wx=>1000, :boundingbox=>[37, -19, 961, 737]}, 235=>{:wx=>365, :boundingbox=>[6, 401, 360, 737]}, 241=>{:wx=>889, :boundingbox=>[29, -14, 858, 546]}, 245=>{:wx=>278, :boundingbox=>[69, 0, 209, 532]}, 248=>{:wx=>278, :boundingbox=>[-18, 0, 296, 718]}, 249=>{:wx=>611, :boundingbox=>[22, -29, 589, 560]}, 250=>{:wx=>944, :boundingbox=>[34, -14, 912, 546]}, 251=>{:wx=>611, :boundingbox=>[69, -14, 579, 731]}, -1=>{:wx=>556, :boundingbox=>[0, 0, 0, 0]}}
129
+ helvetica_boldoblique_metrics = {32=>{:wx=>278, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>333, :boundingbox=>[94, 0, 397, 718]}, 34=>{:wx=>474, :boundingbox=>[193, 447, 529, 718]}, 35=>{:wx=>556, :boundingbox=>[60, 0, 644, 698]}, 36=>{:wx=>556, :boundingbox=>[67, -115, 622, 775]}, 37=>{:wx=>889, :boundingbox=>[136, -19, 901, 710]}, 38=>{:wx=>722, :boundingbox=>[89, -19, 732, 718]}, 39=>{:wx=>278, :boundingbox=>[167, 445, 362, 718]}, 40=>{:wx=>333, :boundingbox=>[76, -208, 470, 734]}, 41=>{:wx=>333, :boundingbox=>[-25, -208, 369, 734]}, 42=>{:wx=>389, :boundingbox=>[146, 387, 481, 718]}, 43=>{:wx=>584, :boundingbox=>[82, 0, 610, 506]}, 44=>{:wx=>278, :boundingbox=>[28, -168, 245, 146]}, 45=>{:wx=>333, :boundingbox=>[73, 215, 379, 345]}, 46=>{:wx=>278, :boundingbox=>[64, 0, 245, 146]}, 47=>{:wx=>278, :boundingbox=>[-37, -19, 468, 737]}, 48=>{:wx=>556, :boundingbox=>[86, -19, 617, 710]}, 49=>{:wx=>556, :boundingbox=>[173, 0, 529, 710]}, 50=>{:wx=>556, :boundingbox=>[26, 0, 619, 710]}, 51=>{:wx=>556, :boundingbox=>[65, -19, 608, 710]}, 52=>{:wx=>556, :boundingbox=>[60, 0, 598, 710]}, 53=>{:wx=>556, :boundingbox=>[64, -19, 636, 698]}, 54=>{:wx=>556, :boundingbox=>[85, -19, 619, 710]}, 55=>{:wx=>556, :boundingbox=>[125, 0, 676, 698]}, 56=>{:wx=>556, :boundingbox=>[69, -19, 616, 710]}, 57=>{:wx=>556, :boundingbox=>[78, -19, 615, 710]}, 58=>{:wx=>333, :boundingbox=>[92, 0, 351, 512]}, 59=>{:wx=>333, :boundingbox=>[56, -168, 351, 512]}, 60=>{:wx=>584, :boundingbox=>[82, -8, 655, 514]}, 61=>{:wx=>584, :boundingbox=>[58, 87, 633, 419]}, 62=>{:wx=>584, :boundingbox=>[36, -8, 609, 514]}, 63=>{:wx=>611, :boundingbox=>[165, 0, 671, 727]}, 64=>{:wx=>975, :boundingbox=>[186, -19, 954, 737]}, 65=>{:wx=>722, :boundingbox=>[20, 0, 702, 718]}, 66=>{:wx=>722, :boundingbox=>[76, 0, 764, 718]}, 67=>{:wx=>722, :boundingbox=>[107, -19, 789, 737]}, 68=>{:wx=>722, :boundingbox=>[76, 0, 777, 718]}, 69=>{:wx=>667, :boundingbox=>[76, 0, 757, 718]}, 70=>{:wx=>611, :boundingbox=>[76, 0, 740, 718]}, 71=>{:wx=>778, :boundingbox=>[108, -19, 817, 737]}, 72=>{:wx=>722, :boundingbox=>[71, 0, 804, 718]}, 73=>{:wx=>278, :boundingbox=>[64, 0, 367, 718]}, 74=>{:wx=>556, :boundingbox=>[60, -18, 637, 718]}, 75=>{:wx=>722, :boundingbox=>[87, 0, 858, 718]}, 76=>{:wx=>611, :boundingbox=>[76, 0, 611, 718]}, 77=>{:wx=>833, :boundingbox=>[69, 0, 918, 718]}, 78=>{:wx=>722, :boundingbox=>[69, 0, 807, 718]}, 79=>{:wx=>778, :boundingbox=>[107, -19, 823, 737]}, 80=>{:wx=>667, :boundingbox=>[76, 0, 738, 718]}, 81=>{:wx=>778, :boundingbox=>[107, -52, 823, 737]}, 82=>{:wx=>722, :boundingbox=>[76, 0, 778, 718]}, 83=>{:wx=>667, :boundingbox=>[81, -19, 718, 737]}, 84=>{:wx=>611, :boundingbox=>[140, 0, 751, 718]}, 85=>{:wx=>722, :boundingbox=>[116, -19, 804, 718]}, 86=>{:wx=>667, :boundingbox=>[172, 0, 801, 718]}, 87=>{:wx=>944, :boundingbox=>[169, 0, 1082, 718]}, 88=>{:wx=>667, :boundingbox=>[14, 0, 791, 718]}, 89=>{:wx=>667, :boundingbox=>[168, 0, 806, 718]}, 90=>{:wx=>611, :boundingbox=>[25, 0, 737, 718]}, 91=>{:wx=>333, :boundingbox=>[21, -196, 462, 722]}, 92=>{:wx=>278, :boundingbox=>[124, -19, 307, 737]}, 93=>{:wx=>333, :boundingbox=>[-18, -196, 423, 722]}, 94=>{:wx=>584, :boundingbox=>[131, 323, 591, 698]}, 95=>{:wx=>556, :boundingbox=>[-27, -125, 540, -75]}, 96=>{:wx=>278, :boundingbox=>[165, 454, 361, 727]}, 97=>{:wx=>556, :boundingbox=>[55, -14, 583, 546]}, 98=>{:wx=>611, :boundingbox=>[61, -14, 645, 718]}, 99=>{:wx=>556, :boundingbox=>[79, -14, 599, 546]}, 100=>{:wx=>611, :boundingbox=>[82, -14, 704, 718]}, 101=>{:wx=>556, :boundingbox=>[70, -14, 593, 546]}, 102=>{:wx=>333, :boundingbox=>[87, 0, 469, 727]}, 103=>{:wx=>611, :boundingbox=>[38, -217, 666, 546]}, 104=>{:wx=>611, :boundingbox=>[65, 0, 629, 718]}, 105=>{:wx=>278, :boundingbox=>[69, 0, 363, 725]}, 106=>{:wx=>278, :boundingbox=>[-42, -214, 363, 725]}, 107=>{:wx=>556, :boundingbox=>[69, 0, 670, 718]}, 108=>{:wx=>278, :boundingbox=>[69, 0, 362, 718]}, 109=>{:wx=>889, :boundingbox=>[64, 0, 909, 546]}, 110=>{:wx=>611, :boundingbox=>[65, 0, 629, 546]}, 111=>{:wx=>611, :boundingbox=>[82, -14, 643, 546]}, 112=>{:wx=>611, :boundingbox=>[18, -207, 645, 546]}, 113=>{:wx=>611, :boundingbox=>[80, -207, 665, 546]}, 114=>{:wx=>389, :boundingbox=>[64, 0, 489, 546]}, 115=>{:wx=>556, :boundingbox=>[63, -14, 584, 546]}, 116=>{:wx=>333, :boundingbox=>[100, -6, 422, 676]}, 117=>{:wx=>611, :boundingbox=>[98, -14, 658, 532]}, 118=>{:wx=>556, :boundingbox=>[126, 0, 656, 532]}, 119=>{:wx=>778, :boundingbox=>[123, 0, 882, 532]}, 120=>{:wx=>556, :boundingbox=>[15, 0, 648, 532]}, 121=>{:wx=>556, :boundingbox=>[42, -214, 652, 532]}, 122=>{:wx=>500, :boundingbox=>[20, 0, 583, 532]}, 123=>{:wx=>389, :boundingbox=>[94, -196, 518, 722]}, 124=>{:wx=>280, :boundingbox=>[36, -225, 361, 775]}, 125=>{:wx=>389, :boundingbox=>[-18, -196, 407, 722]}, 126=>{:wx=>584, :boundingbox=>[115, 163, 577, 343]}, 161=>{:wx=>333, :boundingbox=>[50, -186, 353, 532]}, 162=>{:wx=>556, :boundingbox=>[79, -118, 599, 628]}, 163=>{:wx=>556, :boundingbox=>[50, -16, 635, 718]}, 164=>{:wx=>167, :boundingbox=>[-174, -19, 487, 710]}, 165=>{:wx=>556, :boundingbox=>[60, 0, 713, 698]}, 166=>{:wx=>556, :boundingbox=>[-50, -210, 669, 737]}, 167=>{:wx=>556, :boundingbox=>[61, -184, 598, 727]}, 168=>{:wx=>556, :boundingbox=>[27, 76, 680, 636]}, 169=>{:wx=>238, :boundingbox=>[165, 447, 321, 718]}, 170=>{:wx=>500, :boundingbox=>[160, 454, 588, 727]}, 171=>{:wx=>556, :boundingbox=>[135, 76, 571, 484]}, 172=>{:wx=>333, :boundingbox=>[130, 76, 353, 484]}, 173=>{:wx=>333, :boundingbox=>[99, 76, 322, 484]}, 174=>{:wx=>611, :boundingbox=>[87, 0, 696, 727]}, 175=>{:wx=>611, :boundingbox=>[87, 0, 695, 727]}, 177=>{:wx=>556, :boundingbox=>[48, 227, 627, 333]}, 178=>{:wx=>556, :boundingbox=>[118, -171, 626, 718]}, 179=>{:wx=>556, :boundingbox=>[46, -171, 628, 718]}, 180=>{:wx=>278, :boundingbox=>[110, 172, 276, 334]}, 182=>{:wx=>556, :boundingbox=>[98, -191, 688, 700]}, 183=>{:wx=>350, :boundingbox=>[83, 194, 420, 524]}, 184=>{:wx=>278, :boundingbox=>[41, -146, 236, 127]}, 185=>{:wx=>500, :boundingbox=>[36, -146, 463, 127]}, 186=>{:wx=>500, :boundingbox=>[162, 445, 589, 718]}, 187=>{:wx=>556, :boundingbox=>[104, 76, 540, 484]}, 188=>{:wx=>1000, :boundingbox=>[92, 0, 939, 146]}, 189=>{:wx=>1000, :boundingbox=>[76, -19, 1038, 710]}, 191=>{:wx=>611, :boundingbox=>[53, -195, 559, 532]}, 193=>{:wx=>333, :boundingbox=>[136, 604, 353, 750]}, 194=>{:wx=>333, :boundingbox=>[236, 604, 515, 750]}, 195=>{:wx=>333, :boundingbox=>[118, 604, 471, 750]}, 196=>{:wx=>333, :boundingbox=>[113, 610, 507, 737]}, 197=>{:wx=>333, :boundingbox=>[122, 604, 483, 678]}, 198=>{:wx=>333, :boundingbox=>[156, 604, 494, 750]}, 199=>{:wx=>333, :boundingbox=>[235, 614, 385, 729]}, 200=>{:wx=>333, :boundingbox=>[137, 614, 482, 729]}, 202=>{:wx=>333, :boundingbox=>[200, 568, 420, 776]}, 203=>{:wx=>333, :boundingbox=>[-37, -228, 220, 0]}, 205=>{:wx=>333, :boundingbox=>[137, 604, 645, 750]}, 206=>{:wx=>333, :boundingbox=>[41, -228, 264, 0]}, 207=>{:wx=>333, :boundingbox=>[149, 604, 502, 750]}, 208=>{:wx=>1000, :boundingbox=>[48, 227, 1071, 333]}, 225=>{:wx=>1000, :boundingbox=>[5, 0, 1100, 718]}, 227=>{:wx=>370, :boundingbox=>[125, 401, 465, 737]}, 232=>{:wx=>611, :boundingbox=>[34, 0, 611, 718]}, 233=>{:wx=>778, :boundingbox=>[35, -27, 894, 745]}, 234=>{:wx=>1000, :boundingbox=>[99, -19, 1114, 737]}, 235=>{:wx=>365, :boundingbox=>[123, 401, 485, 737]}, 241=>{:wx=>889, :boundingbox=>[56, -14, 923, 546]}, 245=>{:wx=>278, :boundingbox=>[69, 0, 322, 532]}, 248=>{:wx=>278, :boundingbox=>[40, 0, 407, 718]}, 249=>{:wx=>611, :boundingbox=>[22, -29, 701, 560]}, 250=>{:wx=>944, :boundingbox=>[82, -14, 977, 546]}, 251=>{:wx=>611, :boundingbox=>[69, -14, 657, 731]}, -1=>{:wx=>556, :boundingbox=>[0, 0, 0, 0]}}
130
+ helvetica_oblique_metrics = {32=>{:wx=>278, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>278, :boundingbox=>[90, 0, 340, 718]}, 34=>{:wx=>355, :boundingbox=>[168, 463, 438, 718]}, 35=>{:wx=>556, :boundingbox=>[73, 0, 631, 688]}, 36=>{:wx=>556, :boundingbox=>[69, -115, 617, 775]}, 37=>{:wx=>889, :boundingbox=>[147, -19, 889, 703]}, 38=>{:wx=>667, :boundingbox=>[77, -15, 647, 718]}, 39=>{:wx=>222, :boundingbox=>[151, 463, 310, 718]}, 40=>{:wx=>333, :boundingbox=>[108, -207, 454, 733]}, 41=>{:wx=>333, :boundingbox=>[-9, -207, 337, 733]}, 42=>{:wx=>389, :boundingbox=>[165, 431, 475, 718]}, 43=>{:wx=>584, :boundingbox=>[85, 0, 606, 505]}, 44=>{:wx=>278, :boundingbox=>[56, -147, 214, 106]}, 45=>{:wx=>333, :boundingbox=>[93, 232, 357, 322]}, 46=>{:wx=>278, :boundingbox=>[87, 0, 214, 106]}, 47=>{:wx=>278, :boundingbox=>[-21, -19, 452, 737]}, 48=>{:wx=>556, :boundingbox=>[93, -19, 608, 703]}, 49=>{:wx=>556, :boundingbox=>[207, 0, 508, 703]}, 50=>{:wx=>556, :boundingbox=>[26, 0, 617, 703]}, 51=>{:wx=>556, :boundingbox=>[75, -19, 610, 703]}, 52=>{:wx=>556, :boundingbox=>[61, 0, 576, 703]}, 53=>{:wx=>556, :boundingbox=>[68, -19, 621, 688]}, 54=>{:wx=>556, :boundingbox=>[91, -19, 615, 703]}, 55=>{:wx=>556, :boundingbox=>[137, 0, 669, 688]}, 56=>{:wx=>556, :boundingbox=>[74, -19, 607, 703]}, 57=>{:wx=>556, :boundingbox=>[82, -19, 609, 703]}, 58=>{:wx=>278, :boundingbox=>[87, 0, 301, 516]}, 59=>{:wx=>278, :boundingbox=>[56, -147, 301, 516]}, 60=>{:wx=>584, :boundingbox=>[94, 11, 641, 495]}, 61=>{:wx=>584, :boundingbox=>[63, 115, 628, 390]}, 62=>{:wx=>584, :boundingbox=>[50, 11, 597, 495]}, 63=>{:wx=>556, :boundingbox=>[161, 0, 610, 727]}, 64=>{:wx=>1015, :boundingbox=>[215, -19, 965, 737]}, 65=>{:wx=>667, :boundingbox=>[14, 0, 654, 718]}, 66=>{:wx=>667, :boundingbox=>[74, 0, 712, 718]}, 67=>{:wx=>722, :boundingbox=>[108, -19, 782, 737]}, 68=>{:wx=>722, :boundingbox=>[81, 0, 764, 718]}, 69=>{:wx=>667, :boundingbox=>[86, 0, 762, 718]}, 70=>{:wx=>611, :boundingbox=>[86, 0, 736, 718]}, 71=>{:wx=>778, :boundingbox=>[111, -19, 799, 737]}, 72=>{:wx=>722, :boundingbox=>[77, 0, 799, 718]}, 73=>{:wx=>278, :boundingbox=>[91, 0, 341, 718]}, 74=>{:wx=>500, :boundingbox=>[47, -19, 581, 718]}, 75=>{:wx=>667, :boundingbox=>[76, 0, 808, 718]}, 76=>{:wx=>556, :boundingbox=>[76, 0, 555, 718]}, 77=>{:wx=>833, :boundingbox=>[73, 0, 914, 718]}, 78=>{:wx=>722, :boundingbox=>[76, 0, 799, 718]}, 79=>{:wx=>778, :boundingbox=>[105, -19, 826, 737]}, 80=>{:wx=>667, :boundingbox=>[86, 0, 737, 718]}, 81=>{:wx=>778, :boundingbox=>[105, -56, 826, 737]}, 82=>{:wx=>722, :boundingbox=>[88, 0, 773, 718]}, 83=>{:wx=>667, :boundingbox=>[90, -19, 713, 737]}, 84=>{:wx=>611, :boundingbox=>[148, 0, 750, 718]}, 85=>{:wx=>722, :boundingbox=>[123, -19, 797, 718]}, 86=>{:wx=>667, :boundingbox=>[173, 0, 800, 718]}, 87=>{:wx=>944, :boundingbox=>[169, 0, 1081, 718]}, 88=>{:wx=>667, :boundingbox=>[19, 0, 790, 718]}, 89=>{:wx=>667, :boundingbox=>[167, 0, 806, 718]}, 90=>{:wx=>611, :boundingbox=>[23, 0, 741, 718]}, 91=>{:wx=>278, :boundingbox=>[21, -196, 403, 722]}, 92=>{:wx=>278, :boundingbox=>[140, -19, 291, 737]}, 93=>{:wx=>278, :boundingbox=>[-14, -196, 368, 722]}, 94=>{:wx=>469, :boundingbox=>[42, 264, 539, 688]}, 95=>{:wx=>556, :boundingbox=>[-27, -125, 540, -75]}, 96=>{:wx=>222, :boundingbox=>[165, 470, 323, 725]}, 97=>{:wx=>556, :boundingbox=>[61, -15, 559, 538]}, 98=>{:wx=>556, :boundingbox=>[58, -15, 584, 718]}, 99=>{:wx=>500, :boundingbox=>[74, -15, 553, 538]}, 100=>{:wx=>556, :boundingbox=>[84, -15, 652, 718]}, 101=>{:wx=>556, :boundingbox=>[84, -15, 578, 538]}, 102=>{:wx=>278, :boundingbox=>[86, 0, 416, 728]}, 103=>{:wx=>556, :boundingbox=>[42, -220, 610, 538]}, 104=>{:wx=>556, :boundingbox=>[65, 0, 573, 718]}, 105=>{:wx=>222, :boundingbox=>[67, 0, 308, 718]}, 106=>{:wx=>222, :boundingbox=>[-60, -210, 308, 718]}, 107=>{:wx=>500, :boundingbox=>[67, 0, 600, 718]}, 108=>{:wx=>222, :boundingbox=>[67, 0, 308, 718]}, 109=>{:wx=>833, :boundingbox=>[65, 0, 852, 538]}, 110=>{:wx=>556, :boundingbox=>[65, 0, 573, 538]}, 111=>{:wx=>556, :boundingbox=>[83, -14, 585, 538]}, 112=>{:wx=>556, :boundingbox=>[14, -207, 584, 538]}, 113=>{:wx=>556, :boundingbox=>[84, -207, 605, 538]}, 114=>{:wx=>333, :boundingbox=>[77, 0, 446, 538]}, 115=>{:wx=>500, :boundingbox=>[63, -15, 529, 538]}, 116=>{:wx=>278, :boundingbox=>[102, -7, 368, 669]}, 117=>{:wx=>556, :boundingbox=>[94, -15, 600, 523]}, 118=>{:wx=>500, :boundingbox=>[119, 0, 603, 523]}, 119=>{:wx=>722, :boundingbox=>[125, 0, 820, 523]}, 120=>{:wx=>500, :boundingbox=>[11, 0, 594, 523]}, 121=>{:wx=>500, :boundingbox=>[15, -214, 600, 523]}, 122=>{:wx=>500, :boundingbox=>[31, 0, 571, 523]}, 123=>{:wx=>334, :boundingbox=>[92, -196, 445, 722]}, 124=>{:wx=>260, :boundingbox=>[46, -225, 332, 775]}, 125=>{:wx=>334, :boundingbox=>[0, -196, 354, 722]}, 126=>{:wx=>584, :boundingbox=>[111, 180, 580, 326]}, 161=>{:wx=>333, :boundingbox=>[77, -195, 326, 523]}, 162=>{:wx=>556, :boundingbox=>[95, -115, 584, 623]}, 163=>{:wx=>556, :boundingbox=>[49, -16, 634, 718]}, 164=>{:wx=>167, :boundingbox=>[-170, -19, 482, 703]}, 165=>{:wx=>556, :boundingbox=>[81, 0, 699, 688]}, 166=>{:wx=>556, :boundingbox=>[-52, -207, 654, 737]}, 167=>{:wx=>556, :boundingbox=>[76, -191, 584, 737]}, 168=>{:wx=>556, :boundingbox=>[60, 99, 646, 603]}, 169=>{:wx=>191, :boundingbox=>[157, 463, 285, 718]}, 170=>{:wx=>333, :boundingbox=>[138, 470, 461, 725]}, 171=>{:wx=>556, :boundingbox=>[146, 108, 554, 446]}, 172=>{:wx=>333, :boundingbox=>[137, 108, 340, 446]}, 173=>{:wx=>333, :boundingbox=>[111, 108, 314, 446]}, 174=>{:wx=>500, :boundingbox=>[86, 0, 587, 728]}, 175=>{:wx=>500, :boundingbox=>[86, 0, 585, 728]}, 177=>{:wx=>556, :boundingbox=>[51, 240, 623, 313]}, 178=>{:wx=>556, :boundingbox=>[135, -159, 622, 718]}, 179=>{:wx=>556, :boundingbox=>[52, -159, 623, 718]}, 180=>{:wx=>278, :boundingbox=>[129, 190, 257, 315]}, 182=>{:wx=>537, :boundingbox=>[126, -173, 650, 718]}, 183=>{:wx=>350, :boundingbox=>[91, 202, 413, 517]}, 184=>{:wx=>222, :boundingbox=>[21, -149, 180, 106]}, 185=>{:wx=>333, :boundingbox=>[-6, -149, 318, 106]}, 186=>{:wx=>333, :boundingbox=>[124, 463, 448, 718]}, 187=>{:wx=>556, :boundingbox=>[120, 108, 528, 446]}, 188=>{:wx=>1000, :boundingbox=>[115, 0, 908, 106]}, 189=>{:wx=>1000, :boundingbox=>[88, -19, 1029, 703]}, 191=>{:wx=>611, :boundingbox=>[85, -201, 534, 525]}, 193=>{:wx=>333, :boundingbox=>[170, 593, 337, 734]}, 194=>{:wx=>333, :boundingbox=>[248, 593, 475, 734]}, 195=>{:wx=>333, :boundingbox=>[147, 593, 438, 734]}, 196=>{:wx=>333, :boundingbox=>[125, 606, 490, 722]}, 197=>{:wx=>333, :boundingbox=>[143, 627, 468, 684]}, 198=>{:wx=>333, :boundingbox=>[167, 595, 476, 731]}, 199=>{:wx=>333, :boundingbox=>[249, 604, 362, 706]}, 200=>{:wx=>333, :boundingbox=>[168, 604, 443, 706]}, 202=>{:wx=>333, :boundingbox=>[214, 572, 402, 756]}, 203=>{:wx=>333, :boundingbox=>[2, -225, 232, 0]}, 205=>{:wx=>333, :boundingbox=>[157, 593, 565, 734]}, 206=>{:wx=>333, :boundingbox=>[43, -225, 249, 0]}, 207=>{:wx=>333, :boundingbox=>[177, 593, 468, 734]}, 208=>{:wx=>1000, :boundingbox=>[51, 240, 1067, 313]}, 225=>{:wx=>1000, :boundingbox=>[8, 0, 1097, 718]}, 227=>{:wx=>370, :boundingbox=>[127, 405, 449, 737]}, 232=>{:wx=>556, :boundingbox=>[41, 0, 555, 718]}, 233=>{:wx=>778, :boundingbox=>[43, -19, 890, 737]}, 234=>{:wx=>1000, :boundingbox=>[98, -19, 1116, 737]}, 235=>{:wx=>365, :boundingbox=>[141, 405, 468, 737]}, 241=>{:wx=>889, :boundingbox=>[61, -15, 909, 538]}, 245=>{:wx=>278, :boundingbox=>[95, 0, 294, 523]}, 248=>{:wx=>222, :boundingbox=>[41, 0, 347, 718]}, 249=>{:wx=>611, :boundingbox=>[29, -22, 647, 545]}, 250=>{:wx=>944, :boundingbox=>[83, -15, 964, 538]}, 251=>{:wx=>611, :boundingbox=>[67, -15, 658, 728]}, -1=>{:wx=>556, :boundingbox=>[0, 0, 0, 0]}}
131
+ courier_metrics = {32=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>600, :boundingbox=>[236, -15, 364, 572]}, 34=>{:wx=>600, :boundingbox=>[187, 328, 413, 562]}, 35=>{:wx=>600, :boundingbox=>[93, -32, 507, 639]}, 36=>{:wx=>600, :boundingbox=>[105, -126, 496, 662]}, 37=>{:wx=>600, :boundingbox=>[81, -15, 518, 622]}, 38=>{:wx=>600, :boundingbox=>[63, -15, 538, 543]}, 39=>{:wx=>600, :boundingbox=>[213, 328, 376, 562]}, 40=>{:wx=>600, :boundingbox=>[269, -108, 440, 622]}, 41=>{:wx=>600, :boundingbox=>[160, -108, 331, 622]}, 42=>{:wx=>600, :boundingbox=>[116, 257, 484, 607]}, 43=>{:wx=>600, :boundingbox=>[80, 44, 520, 470]}, 44=>{:wx=>600, :boundingbox=>[181, -112, 344, 122]}, 45=>{:wx=>600, :boundingbox=>[103, 231, 497, 285]}, 46=>{:wx=>600, :boundingbox=>[229, -15, 371, 109]}, 47=>{:wx=>600, :boundingbox=>[125, -80, 475, 629]}, 48=>{:wx=>600, :boundingbox=>[106, -15, 494, 622]}, 49=>{:wx=>600, :boundingbox=>[96, 0, 505, 622]}, 50=>{:wx=>600, :boundingbox=>[70, 0, 471, 622]}, 51=>{:wx=>600, :boundingbox=>[75, -15, 466, 622]}, 52=>{:wx=>600, :boundingbox=>[78, 0, 500, 622]}, 53=>{:wx=>600, :boundingbox=>[92, -15, 497, 607]}, 54=>{:wx=>600, :boundingbox=>[111, -15, 497, 622]}, 55=>{:wx=>600, :boundingbox=>[82, 0, 483, 607]}, 56=>{:wx=>600, :boundingbox=>[102, -15, 498, 622]}, 57=>{:wx=>600, :boundingbox=>[96, -15, 489, 622]}, 58=>{:wx=>600, :boundingbox=>[229, -15, 371, 385]}, 59=>{:wx=>600, :boundingbox=>[181, -112, 371, 385]}, 60=>{:wx=>600, :boundingbox=>[41, 42, 519, 472]}, 61=>{:wx=>600, :boundingbox=>[80, 138, 520, 376]}, 62=>{:wx=>600, :boundingbox=>[66, 42, 544, 472]}, 63=>{:wx=>600, :boundingbox=>[129, -15, 492, 572]}, 64=>{:wx=>600, :boundingbox=>[77, -15, 533, 622]}, 65=>{:wx=>600, :boundingbox=>[3, 0, 597, 562]}, 66=>{:wx=>600, :boundingbox=>[43, 0, 559, 562]}, 67=>{:wx=>600, :boundingbox=>[41, -18, 540, 580]}, 68=>{:wx=>600, :boundingbox=>[43, 0, 574, 562]}, 69=>{:wx=>600, :boundingbox=>[53, 0, 550, 562]}, 70=>{:wx=>600, :boundingbox=>[53, 0, 545, 562]}, 71=>{:wx=>600, :boundingbox=>[31, -18, 575, 580]}, 72=>{:wx=>600, :boundingbox=>[32, 0, 568, 562]}, 73=>{:wx=>600, :boundingbox=>[96, 0, 504, 562]}, 74=>{:wx=>600, :boundingbox=>[34, -18, 566, 562]}, 75=>{:wx=>600, :boundingbox=>[38, 0, 582, 562]}, 76=>{:wx=>600, :boundingbox=>[47, 0, 554, 562]}, 77=>{:wx=>600, :boundingbox=>[4, 0, 596, 562]}, 78=>{:wx=>600, :boundingbox=>[7, -13, 593, 562]}, 79=>{:wx=>600, :boundingbox=>[43, -18, 557, 580]}, 80=>{:wx=>600, :boundingbox=>[79, 0, 558, 562]}, 81=>{:wx=>600, :boundingbox=>[43, -138, 557, 580]}, 82=>{:wx=>600, :boundingbox=>[38, 0, 588, 562]}, 83=>{:wx=>600, :boundingbox=>[72, -20, 529, 580]}, 84=>{:wx=>600, :boundingbox=>[38, 0, 563, 562]}, 85=>{:wx=>600, :boundingbox=>[17, -18, 583, 562]}, 86=>{:wx=>600, :boundingbox=>[-4, -13, 604, 562]}, 87=>{:wx=>600, :boundingbox=>[-3, -13, 603, 562]}, 88=>{:wx=>600, :boundingbox=>[23, 0, 577, 562]}, 89=>{:wx=>600, :boundingbox=>[24, 0, 576, 562]}, 90=>{:wx=>600, :boundingbox=>[86, 0, 514, 562]}, 91=>{:wx=>600, :boundingbox=>[269, -108, 442, 622]}, 92=>{:wx=>600, :boundingbox=>[118, -80, 482, 629]}, 93=>{:wx=>600, :boundingbox=>[158, -108, 331, 622]}, 94=>{:wx=>600, :boundingbox=>[94, 354, 506, 622]}, 95=>{:wx=>600, :boundingbox=>[0, -125, 600, -75]}, 96=>{:wx=>600, :boundingbox=>[224, 328, 387, 562]}, 97=>{:wx=>600, :boundingbox=>[53, -15, 559, 441]}, 98=>{:wx=>600, :boundingbox=>[14, -15, 575, 629]}, 99=>{:wx=>600, :boundingbox=>[66, -15, 529, 441]}, 100=>{:wx=>600, :boundingbox=>[45, -15, 591, 629]}, 101=>{:wx=>600, :boundingbox=>[66, -15, 548, 441]}, 102=>{:wx=>600, :boundingbox=>[114, 0, 531, 629]}, 103=>{:wx=>600, :boundingbox=>[45, -157, 566, 441]}, 104=>{:wx=>600, :boundingbox=>[18, 0, 582, 629]}, 105=>{:wx=>600, :boundingbox=>[95, 0, 505, 657]}, 106=>{:wx=>600, :boundingbox=>[82, -157, 410, 657]}, 107=>{:wx=>600, :boundingbox=>[43, 0, 580, 629]}, 108=>{:wx=>600, :boundingbox=>[95, 0, 505, 629]}, 109=>{:wx=>600, :boundingbox=>[-5, 0, 605, 441]}, 110=>{:wx=>600, :boundingbox=>[26, 0, 575, 441]}, 111=>{:wx=>600, :boundingbox=>[62, -15, 538, 441]}, 112=>{:wx=>600, :boundingbox=>[9, -157, 555, 441]}, 113=>{:wx=>600, :boundingbox=>[45, -157, 591, 441]}, 114=>{:wx=>600, :boundingbox=>[60, 0, 559, 441]}, 115=>{:wx=>600, :boundingbox=>[80, -15, 513, 441]}, 116=>{:wx=>600, :boundingbox=>[87, -15, 530, 561]}, 117=>{:wx=>600, :boundingbox=>[21, -15, 562, 426]}, 118=>{:wx=>600, :boundingbox=>[10, -10, 590, 426]}, 119=>{:wx=>600, :boundingbox=>[-4, -10, 604, 426]}, 120=>{:wx=>600, :boundingbox=>[20, 0, 580, 426]}, 121=>{:wx=>600, :boundingbox=>[7, -157, 592, 426]}, 122=>{:wx=>600, :boundingbox=>[99, 0, 502, 426]}, 123=>{:wx=>600, :boundingbox=>[182, -108, 437, 622]}, 124=>{:wx=>600, :boundingbox=>[275, -250, 326, 750]}, 125=>{:wx=>600, :boundingbox=>[163, -108, 418, 622]}, 126=>{:wx=>600, :boundingbox=>[63, 197, 540, 320]}, 161=>{:wx=>600, :boundingbox=>[236, -157, 364, 430]}, 162=>{:wx=>600, :boundingbox=>[96, -49, 500, 614]}, 163=>{:wx=>600, :boundingbox=>[84, -21, 521, 611]}, 164=>{:wx=>600, :boundingbox=>[92, -57, 509, 665]}, 165=>{:wx=>600, :boundingbox=>[26, 0, 574, 562]}, 166=>{:wx=>600, :boundingbox=>[4, -143, 539, 622]}, 167=>{:wx=>600, :boundingbox=>[113, -78, 488, 580]}, 168=>{:wx=>600, :boundingbox=>[73, 58, 527, 506]}, 169=>{:wx=>600, :boundingbox=>[259, 328, 341, 562]}, 170=>{:wx=>600, :boundingbox=>[143, 328, 471, 562]}, 171=>{:wx=>600, :boundingbox=>[37, 70, 563, 446]}, 172=>{:wx=>600, :boundingbox=>[149, 70, 451, 446]}, 173=>{:wx=>600, :boundingbox=>[149, 70, 451, 446]}, 174=>{:wx=>600, :boundingbox=>[3, 0, 597, 629]}, 175=>{:wx=>600, :boundingbox=>[3, 0, 597, 629]}, 177=>{:wx=>600, :boundingbox=>[75, 231, 525, 285]}, 178=>{:wx=>600, :boundingbox=>[141, -78, 459, 580]}, 179=>{:wx=>600, :boundingbox=>[141, -78, 459, 580]}, 180=>{:wx=>600, :boundingbox=>[222, 189, 378, 327]}, 182=>{:wx=>600, :boundingbox=>[50, -78, 511, 562]}, 183=>{:wx=>600, :boundingbox=>[172, 130, 428, 383]}, 184=>{:wx=>600, :boundingbox=>[213, -134, 376, 100]}, 185=>{:wx=>600, :boundingbox=>[143, -134, 457, 100]}, 186=>{:wx=>600, :boundingbox=>[143, 328, 457, 562]}, 187=>{:wx=>600, :boundingbox=>[37, 70, 563, 446]}, 188=>{:wx=>600, :boundingbox=>[37, -15, 563, 111]}, 189=>{:wx=>600, :boundingbox=>[3, -15, 600, 622]}, 191=>{:wx=>600, :boundingbox=>[108, -157, 471, 430]}, 193=>{:wx=>600, :boundingbox=>[151, 497, 378, 672]}, 194=>{:wx=>600, :boundingbox=>[242, 497, 469, 672]}, 195=>{:wx=>600, :boundingbox=>[124, 477, 476, 654]}, 196=>{:wx=>600, :boundingbox=>[105, 489, 503, 606]}, 197=>{:wx=>600, :boundingbox=>[120, 525, 480, 565]}, 198=>{:wx=>600, :boundingbox=>[153, 501, 447, 609]}, 199=>{:wx=>600, :boundingbox=>[249, 537, 352, 640]}, 200=>{:wx=>600, :boundingbox=>[148, 537, 453, 640]}, 202=>{:wx=>600, :boundingbox=>[218, 463, 382, 627]}, 203=>{:wx=>600, :boundingbox=>[224, -151, 362, 10]}, 205=>{:wx=>600, :boundingbox=>[133, 497, 540, 672]}, 206=>{:wx=>600, :boundingbox=>[211, -172, 407, 4]}, 207=>{:wx=>600, :boundingbox=>[124, 492, 476, 669]}, 208=>{:wx=>600, :boundingbox=>[0, 231, 600, 285]}, 225=>{:wx=>600, :boundingbox=>[3, 0, 550, 562]}, 227=>{:wx=>600, :boundingbox=>[156, 249, 442, 580]}, 232=>{:wx=>600, :boundingbox=>[47, 0, 554, 562]}, 233=>{:wx=>600, :boundingbox=>[43, -80, 557, 629]}, 234=>{:wx=>600, :boundingbox=>[7, 0, 567, 562]}, 235=>{:wx=>600, :boundingbox=>[157, 249, 443, 580]}, 241=>{:wx=>600, :boundingbox=>[19, -15, 570, 441]}, 245=>{:wx=>600, :boundingbox=>[95, 0, 505, 426]}, 248=>{:wx=>600, :boundingbox=>[95, 0, 505, 629]}, 249=>{:wx=>600, :boundingbox=>[62, -80, 538, 506]}, 250=>{:wx=>600, :boundingbox=>[19, -15, 559, 441]}, 251=>{:wx=>600, :boundingbox=>[48, -15, 588, 629]}, -1=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}}
132
+ courier_bold_metrics = {32=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>600, :boundingbox=>[202, -15, 398, 572]}, 34=>{:wx=>600, :boundingbox=>[135, 277, 465, 562]}, 35=>{:wx=>600, :boundingbox=>[56, -45, 544, 651]}, 36=>{:wx=>600, :boundingbox=>[82, -126, 519, 666]}, 37=>{:wx=>600, :boundingbox=>[5, -15, 595, 616]}, 38=>{:wx=>600, :boundingbox=>[36, -15, 546, 543]}, 39=>{:wx=>600, :boundingbox=>[171, 277, 423, 562]}, 40=>{:wx=>600, :boundingbox=>[219, -102, 461, 616]}, 41=>{:wx=>600, :boundingbox=>[139, -102, 381, 616]}, 42=>{:wx=>600, :boundingbox=>[91, 219, 509, 601]}, 43=>{:wx=>600, :boundingbox=>[71, 39, 529, 478]}, 44=>{:wx=>600, :boundingbox=>[123, -111, 393, 174]}, 45=>{:wx=>600, :boundingbox=>[100, 203, 500, 313]}, 46=>{:wx=>600, :boundingbox=>[192, -15, 408, 171]}, 47=>{:wx=>600, :boundingbox=>[98, -77, 502, 626]}, 48=>{:wx=>600, :boundingbox=>[87, -15, 513, 616]}, 49=>{:wx=>600, :boundingbox=>[81, 0, 539, 616]}, 50=>{:wx=>600, :boundingbox=>[61, 0, 499, 616]}, 51=>{:wx=>600, :boundingbox=>[63, -15, 501, 616]}, 52=>{:wx=>600, :boundingbox=>[53, 0, 507, 616]}, 53=>{:wx=>600, :boundingbox=>[70, -15, 521, 601]}, 54=>{:wx=>600, :boundingbox=>[90, -15, 521, 616]}, 55=>{:wx=>600, :boundingbox=>[55, 0, 494, 601]}, 56=>{:wx=>600, :boundingbox=>[83, -15, 517, 616]}, 57=>{:wx=>600, :boundingbox=>[79, -15, 510, 616]}, 58=>{:wx=>600, :boundingbox=>[191, -15, 407, 425]}, 59=>{:wx=>600, :boundingbox=>[123, -111, 408, 425]}, 60=>{:wx=>600, :boundingbox=>[66, 15, 523, 501]}, 61=>{:wx=>600, :boundingbox=>[71, 118, 529, 398]}, 62=>{:wx=>600, :boundingbox=>[77, 15, 534, 501]}, 63=>{:wx=>600, :boundingbox=>[98, -14, 501, 580]}, 64=>{:wx=>600, :boundingbox=>[16, -15, 584, 616]}, 65=>{:wx=>600, :boundingbox=>[-9, 0, 609, 562]}, 66=>{:wx=>600, :boundingbox=>[30, 0, 573, 562]}, 67=>{:wx=>600, :boundingbox=>[22, -18, 560, 580]}, 68=>{:wx=>600, :boundingbox=>[30, 0, 594, 562]}, 69=>{:wx=>600, :boundingbox=>[25, 0, 560, 562]}, 70=>{:wx=>600, :boundingbox=>[39, 0, 570, 562]}, 71=>{:wx=>600, :boundingbox=>[22, -18, 594, 580]}, 72=>{:wx=>600, :boundingbox=>[20, 0, 580, 562]}, 73=>{:wx=>600, :boundingbox=>[77, 0, 523, 562]}, 74=>{:wx=>600, :boundingbox=>[37, -18, 601, 562]}, 75=>{:wx=>600, :boundingbox=>[21, 0, 599, 562]}, 76=>{:wx=>600, :boundingbox=>[39, 0, 578, 562]}, 77=>{:wx=>600, :boundingbox=>[-2, 0, 602, 562]}, 78=>{:wx=>600, :boundingbox=>[8, -12, 610, 562]}, 79=>{:wx=>600, :boundingbox=>[22, -18, 578, 580]}, 80=>{:wx=>600, :boundingbox=>[48, 0, 559, 562]}, 81=>{:wx=>600, :boundingbox=>[32, -138, 578, 580]}, 82=>{:wx=>600, :boundingbox=>[24, 0, 599, 562]}, 83=>{:wx=>600, :boundingbox=>[47, -22, 553, 582]}, 84=>{:wx=>600, :boundingbox=>[21, 0, 579, 562]}, 85=>{:wx=>600, :boundingbox=>[4, -18, 596, 562]}, 86=>{:wx=>600, :boundingbox=>[-13, 0, 613, 562]}, 87=>{:wx=>600, :boundingbox=>[-18, 0, 618, 562]}, 88=>{:wx=>600, :boundingbox=>[12, 0, 588, 562]}, 89=>{:wx=>600, :boundingbox=>[12, 0, 589, 562]}, 90=>{:wx=>600, :boundingbox=>[62, 0, 539, 562]}, 91=>{:wx=>600, :boundingbox=>[245, -102, 475, 616]}, 92=>{:wx=>600, :boundingbox=>[99, -77, 503, 626]}, 93=>{:wx=>600, :boundingbox=>[125, -102, 355, 616]}, 94=>{:wx=>600, :boundingbox=>[108, 250, 492, 616]}, 95=>{:wx=>600, :boundingbox=>[0, -125, 600, -75]}, 96=>{:wx=>600, :boundingbox=>[178, 277, 428, 562]}, 97=>{:wx=>600, :boundingbox=>[35, -15, 570, 454]}, 98=>{:wx=>600, :boundingbox=>[0, -15, 584, 626]}, 99=>{:wx=>600, :boundingbox=>[40, -15, 545, 459]}, 100=>{:wx=>600, :boundingbox=>[20, -15, 591, 626]}, 101=>{:wx=>600, :boundingbox=>[40, -15, 563, 454]}, 102=>{:wx=>600, :boundingbox=>[83, 0, 547, 626]}, 103=>{:wx=>600, :boundingbox=>[30, -146, 580, 454]}, 104=>{:wx=>600, :boundingbox=>[5, 0, 592, 626]}, 105=>{:wx=>600, :boundingbox=>[77, 0, 523, 658]}, 106=>{:wx=>600, :boundingbox=>[63, -146, 440, 658]}, 107=>{:wx=>600, :boundingbox=>[20, 0, 585, 626]}, 108=>{:wx=>600, :boundingbox=>[77, 0, 523, 626]}, 109=>{:wx=>600, :boundingbox=>[-22, 0, 626, 454]}, 110=>{:wx=>600, :boundingbox=>[18, 0, 592, 454]}, 111=>{:wx=>600, :boundingbox=>[30, -15, 570, 454]}, 112=>{:wx=>600, :boundingbox=>[-1, -142, 570, 454]}, 113=>{:wx=>600, :boundingbox=>[20, -142, 591, 454]}, 114=>{:wx=>600, :boundingbox=>[47, 0, 580, 454]}, 115=>{:wx=>600, :boundingbox=>[68, -17, 535, 459]}, 116=>{:wx=>600, :boundingbox=>[47, -15, 532, 562]}, 117=>{:wx=>600, :boundingbox=>[-1, -15, 569, 439]}, 118=>{:wx=>600, :boundingbox=>[-1, 0, 601, 439]}, 119=>{:wx=>600, :boundingbox=>[-18, 0, 618, 439]}, 120=>{:wx=>600, :boundingbox=>[6, 0, 594, 439]}, 121=>{:wx=>600, :boundingbox=>[-4, -142, 601, 439]}, 122=>{:wx=>600, :boundingbox=>[81, 0, 520, 439]}, 123=>{:wx=>600, :boundingbox=>[160, -102, 464, 616]}, 124=>{:wx=>600, :boundingbox=>[255, -250, 345, 750]}, 125=>{:wx=>600, :boundingbox=>[136, -102, 440, 616]}, 126=>{:wx=>600, :boundingbox=>[71, 153, 530, 356]}, 161=>{:wx=>600, :boundingbox=>[202, -146, 398, 449]}, 162=>{:wx=>600, :boundingbox=>[66, -49, 518, 614]}, 163=>{:wx=>600, :boundingbox=>[72, -28, 558, 611]}, 164=>{:wx=>600, :boundingbox=>[25, -60, 576, 661]}, 165=>{:wx=>600, :boundingbox=>[10, 0, 590, 562]}, 166=>{:wx=>600, :boundingbox=>[-30, -131, 572, 616]}, 167=>{:wx=>600, :boundingbox=>[83, -70, 517, 580]}, 168=>{:wx=>600, :boundingbox=>[54, 49, 546, 517]}, 169=>{:wx=>600, :boundingbox=>[227, 277, 373, 562]}, 170=>{:wx=>600, :boundingbox=>[71, 277, 535, 562]}, 171=>{:wx=>600, :boundingbox=>[8, 70, 553, 446]}, 172=>{:wx=>600, :boundingbox=>[141, 70, 459, 446]}, 173=>{:wx=>600, :boundingbox=>[141, 70, 459, 446]}, 174=>{:wx=>600, :boundingbox=>[12, 0, 593, 626]}, 175=>{:wx=>600, :boundingbox=>[12, 0, 593, 626]}, 177=>{:wx=>600, :boundingbox=>[65, 203, 535, 313]}, 178=>{:wx=>600, :boundingbox=>[106, -70, 494, 580]}, 179=>{:wx=>600, :boundingbox=>[106, -70, 494, 580]}, 180=>{:wx=>600, :boundingbox=>[196, 165, 404, 351]}, 182=>{:wx=>600, :boundingbox=>[6, -70, 576, 580]}, 183=>{:wx=>600, :boundingbox=>[140, 132, 460, 430]}, 184=>{:wx=>600, :boundingbox=>[175, -142, 427, 143]}, 185=>{:wx=>600, :boundingbox=>[65, -142, 529, 143]}, 186=>{:wx=>600, :boundingbox=>[61, 277, 525, 562]}, 187=>{:wx=>600, :boundingbox=>[47, 70, 592, 446]}, 188=>{:wx=>600, :boundingbox=>[26, -15, 574, 116]}, 189=>{:wx=>600, :boundingbox=>[-113, -15, 713, 616]}, 191=>{:wx=>600, :boundingbox=>[99, -146, 502, 449]}, 193=>{:wx=>600, :boundingbox=>[132, 508, 395, 661]}, 194=>{:wx=>600, :boundingbox=>[205, 508, 468, 661]}, 195=>{:wx=>600, :boundingbox=>[103, 483, 497, 657]}, 196=>{:wx=>600, :boundingbox=>[89, 493, 512, 636]}, 197=>{:wx=>600, :boundingbox=>[88, 505, 512, 585]}, 198=>{:wx=>600, :boundingbox=>[83, 468, 517, 631]}, 199=>{:wx=>600, :boundingbox=>[230, 498, 370, 638]}, 200=>{:wx=>600, :boundingbox=>[128, 498, 472, 638]}, 202=>{:wx=>600, :boundingbox=>[198, 481, 402, 678]}, 203=>{:wx=>600, :boundingbox=>[205, -206, 387, 0]}, 205=>{:wx=>600, :boundingbox=>[68, 488, 588, 661]}, 206=>{:wx=>600, :boundingbox=>[169, -199, 400, 0]}, 207=>{:wx=>600, :boundingbox=>[103, 493, 497, 667]}, 208=>{:wx=>600, :boundingbox=>[-10, 203, 610, 313]}, 225=>{:wx=>600, :boundingbox=>[-29, 0, 602, 562]}, 227=>{:wx=>600, :boundingbox=>[147, 196, 453, 580]}, 232=>{:wx=>600, :boundingbox=>[39, 0, 578, 562]}, 233=>{:wx=>600, :boundingbox=>[22, -22, 578, 584]}, 234=>{:wx=>600, :boundingbox=>[-25, 0, 595, 562]}, 235=>{:wx=>600, :boundingbox=>[147, 196, 453, 580]}, 241=>{:wx=>600, :boundingbox=>[-4, -15, 601, 454]}, 245=>{:wx=>600, :boundingbox=>[77, 0, 523, 439]}, 248=>{:wx=>600, :boundingbox=>[77, 0, 523, 626]}, 249=>{:wx=>600, :boundingbox=>[30, -24, 570, 463]}, 250=>{:wx=>600, :boundingbox=>[-18, -15, 611, 454]}, 251=>{:wx=>600, :boundingbox=>[22, -15, 596, 626]}, -1=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}}
133
+ courier_oblique_metrics = {32=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>600, :boundingbox=>[243, -15, 464, 572]}, 34=>{:wx=>600, :boundingbox=>[273, 328, 532, 562]}, 35=>{:wx=>600, :boundingbox=>[133, -32, 596, 639]}, 36=>{:wx=>600, :boundingbox=>[108, -126, 596, 662]}, 37=>{:wx=>600, :boundingbox=>[134, -15, 599, 622]}, 38=>{:wx=>600, :boundingbox=>[87, -15, 580, 543]}, 39=>{:wx=>600, :boundingbox=>[283, 328, 495, 562]}, 40=>{:wx=>600, :boundingbox=>[313, -108, 572, 622]}, 41=>{:wx=>600, :boundingbox=>[137, -108, 396, 622]}, 42=>{:wx=>600, :boundingbox=>[212, 257, 580, 607]}, 43=>{:wx=>600, :boundingbox=>[129, 44, 580, 470]}, 44=>{:wx=>600, :boundingbox=>[157, -112, 370, 122]}, 45=>{:wx=>600, :boundingbox=>[152, 231, 558, 285]}, 46=>{:wx=>600, :boundingbox=>[238, -15, 382, 109]}, 47=>{:wx=>600, :boundingbox=>[112, -80, 604, 629]}, 48=>{:wx=>600, :boundingbox=>[154, -15, 575, 622]}, 49=>{:wx=>600, :boundingbox=>[98, 0, 515, 622]}, 50=>{:wx=>600, :boundingbox=>[70, 0, 568, 622]}, 51=>{:wx=>600, :boundingbox=>[82, -15, 538, 622]}, 52=>{:wx=>600, :boundingbox=>[108, 0, 541, 622]}, 53=>{:wx=>600, :boundingbox=>[99, -15, 589, 607]}, 54=>{:wx=>600, :boundingbox=>[155, -15, 629, 622]}, 55=>{:wx=>600, :boundingbox=>[182, 0, 612, 607]}, 56=>{:wx=>600, :boundingbox=>[132, -15, 588, 622]}, 57=>{:wx=>600, :boundingbox=>[93, -15, 574, 622]}, 58=>{:wx=>600, :boundingbox=>[238, -15, 441, 385]}, 59=>{:wx=>600, :boundingbox=>[157, -112, 441, 385]}, 60=>{:wx=>600, :boundingbox=>[96, 42, 610, 472]}, 61=>{:wx=>600, :boundingbox=>[109, 138, 600, 376]}, 62=>{:wx=>600, :boundingbox=>[85, 42, 599, 472]}, 63=>{:wx=>600, :boundingbox=>[222, -15, 583, 572]}, 64=>{:wx=>600, :boundingbox=>[127, -15, 582, 622]}, 65=>{:wx=>600, :boundingbox=>[3, 0, 607, 562]}, 66=>{:wx=>600, :boundingbox=>[43, 0, 616, 562]}, 67=>{:wx=>600, :boundingbox=>[93, -18, 655, 580]}, 68=>{:wx=>600, :boundingbox=>[43, 0, 645, 562]}, 69=>{:wx=>600, :boundingbox=>[53, 0, 660, 562]}, 70=>{:wx=>600, :boundingbox=>[53, 0, 660, 562]}, 71=>{:wx=>600, :boundingbox=>[83, -18, 645, 580]}, 72=>{:wx=>600, :boundingbox=>[32, 0, 687, 562]}, 73=>{:wx=>600, :boundingbox=>[96, 0, 623, 562]}, 74=>{:wx=>600, :boundingbox=>[52, -18, 685, 562]}, 75=>{:wx=>600, :boundingbox=>[38, 0, 671, 562]}, 76=>{:wx=>600, :boundingbox=>[47, 0, 607, 562]}, 77=>{:wx=>600, :boundingbox=>[4, 0, 715, 562]}, 78=>{:wx=>600, :boundingbox=>[7, -13, 712, 562]}, 79=>{:wx=>600, :boundingbox=>[94, -18, 625, 580]}, 80=>{:wx=>600, :boundingbox=>[79, 0, 644, 562]}, 81=>{:wx=>600, :boundingbox=>[95, -138, 625, 580]}, 82=>{:wx=>600, :boundingbox=>[38, 0, 598, 562]}, 83=>{:wx=>600, :boundingbox=>[76, -20, 650, 580]}, 84=>{:wx=>600, :boundingbox=>[108, 0, 665, 562]}, 85=>{:wx=>600, :boundingbox=>[125, -18, 702, 562]}, 86=>{:wx=>600, :boundingbox=>[105, -13, 723, 562]}, 87=>{:wx=>600, :boundingbox=>[106, -13, 722, 562]}, 88=>{:wx=>600, :boundingbox=>[23, 0, 675, 562]}, 89=>{:wx=>600, :boundingbox=>[133, 0, 695, 562]}, 90=>{:wx=>600, :boundingbox=>[86, 0, 610, 562]}, 91=>{:wx=>600, :boundingbox=>[246, -108, 574, 622]}, 92=>{:wx=>600, :boundingbox=>[249, -80, 468, 629]}, 93=>{:wx=>600, :boundingbox=>[135, -108, 463, 622]}, 94=>{:wx=>600, :boundingbox=>[175, 354, 587, 622]}, 95=>{:wx=>600, :boundingbox=>[-27, -125, 584, -75]}, 96=>{:wx=>600, :boundingbox=>[343, 328, 457, 562]}, 97=>{:wx=>600, :boundingbox=>[76, -15, 569, 441]}, 98=>{:wx=>600, :boundingbox=>[29, -15, 625, 629]}, 99=>{:wx=>600, :boundingbox=>[106, -15, 608, 441]}, 100=>{:wx=>600, :boundingbox=>[85, -15, 640, 629]}, 101=>{:wx=>600, :boundingbox=>[106, -15, 598, 441]}, 102=>{:wx=>600, :boundingbox=>[114, 0, 662, 629]}, 103=>{:wx=>600, :boundingbox=>[61, -157, 657, 441]}, 104=>{:wx=>600, :boundingbox=>[33, 0, 592, 629]}, 105=>{:wx=>600, :boundingbox=>[95, 0, 515, 657]}, 106=>{:wx=>600, :boundingbox=>[52, -157, 550, 657]}, 107=>{:wx=>600, :boundingbox=>[58, 0, 633, 629]}, 108=>{:wx=>600, :boundingbox=>[95, 0, 515, 629]}, 109=>{:wx=>600, :boundingbox=>[-5, 0, 615, 441]}, 110=>{:wx=>600, :boundingbox=>[26, 0, 585, 441]}, 111=>{:wx=>600, :boundingbox=>[102, -15, 588, 441]}, 112=>{:wx=>600, :boundingbox=>[-24, -157, 605, 441]}, 113=>{:wx=>600, :boundingbox=>[85, -157, 682, 441]}, 114=>{:wx=>600, :boundingbox=>[60, 0, 636, 441]}, 115=>{:wx=>600, :boundingbox=>[78, -15, 584, 441]}, 116=>{:wx=>600, :boundingbox=>[167, -15, 561, 561]}, 117=>{:wx=>600, :boundingbox=>[101, -15, 572, 426]}, 118=>{:wx=>600, :boundingbox=>[90, -10, 681, 426]}, 119=>{:wx=>600, :boundingbox=>[76, -10, 695, 426]}, 120=>{:wx=>600, :boundingbox=>[20, 0, 655, 426]}, 121=>{:wx=>600, :boundingbox=>[-4, -157, 683, 426]}, 122=>{:wx=>600, :boundingbox=>[99, 0, 593, 426]}, 123=>{:wx=>600, :boundingbox=>[233, -108, 569, 622]}, 124=>{:wx=>600, :boundingbox=>[222, -250, 485, 750]}, 125=>{:wx=>600, :boundingbox=>[140, -108, 477, 622]}, 126=>{:wx=>600, :boundingbox=>[116, 197, 600, 320]}, 161=>{:wx=>600, :boundingbox=>[225, -157, 445, 430]}, 162=>{:wx=>600, :boundingbox=>[151, -49, 588, 614]}, 163=>{:wx=>600, :boundingbox=>[124, -21, 621, 611]}, 164=>{:wx=>600, :boundingbox=>[84, -57, 646, 665]}, 165=>{:wx=>600, :boundingbox=>[120, 0, 693, 562]}, 166=>{:wx=>600, :boundingbox=>[-26, -143, 671, 622]}, 167=>{:wx=>600, :boundingbox=>[104, -78, 590, 580]}, 168=>{:wx=>600, :boundingbox=>[94, 58, 628, 506]}, 169=>{:wx=>600, :boundingbox=>[345, 328, 460, 562]}, 170=>{:wx=>600, :boundingbox=>[262, 328, 541, 562]}, 171=>{:wx=>600, :boundingbox=>[92, 70, 652, 446]}, 172=>{:wx=>600, :boundingbox=>[204, 70, 540, 446]}, 173=>{:wx=>600, :boundingbox=>[170, 70, 506, 446]}, 174=>{:wx=>600, :boundingbox=>[3, 0, 619, 629]}, 175=>{:wx=>600, :boundingbox=>[3, 0, 619, 629]}, 177=>{:wx=>600, :boundingbox=>[124, 231, 586, 285]}, 178=>{:wx=>600, :boundingbox=>[217, -78, 546, 580]}, 179=>{:wx=>600, :boundingbox=>[163, -78, 546, 580]}, 180=>{:wx=>600, :boundingbox=>[275, 189, 434, 327]}, 182=>{:wx=>600, :boundingbox=>[100, -78, 630, 562]}, 183=>{:wx=>600, :boundingbox=>[224, 130, 485, 383]}, 184=>{:wx=>600, :boundingbox=>[185, -134, 397, 100]}, 185=>{:wx=>600, :boundingbox=>[115, -134, 478, 100]}, 186=>{:wx=>600, :boundingbox=>[213, 328, 576, 562]}, 187=>{:wx=>600, :boundingbox=>[58, 70, 618, 446]}, 188=>{:wx=>600, :boundingbox=>[46, -15, 575, 111]}, 189=>{:wx=>600, :boundingbox=>[59, -15, 627, 622]}, 191=>{:wx=>600, :boundingbox=>[105, -157, 466, 430]}, 193=>{:wx=>600, :boundingbox=>[294, 497, 484, 672]}, 194=>{:wx=>600, :boundingbox=>[348, 497, 612, 672]}, 195=>{:wx=>600, :boundingbox=>[229, 477, 581, 654]}, 196=>{:wx=>600, :boundingbox=>[212, 489, 629, 606]}, 197=>{:wx=>600, :boundingbox=>[232, 525, 600, 565]}, 198=>{:wx=>600, :boundingbox=>[279, 501, 576, 609]}, 199=>{:wx=>600, :boundingbox=>[373, 537, 478, 640]}, 200=>{:wx=>600, :boundingbox=>[272, 537, 579, 640]}, 202=>{:wx=>600, :boundingbox=>[332, 463, 500, 627]}, 203=>{:wx=>600, :boundingbox=>[197, -151, 344, 10]}, 205=>{:wx=>600, :boundingbox=>[239, 497, 683, 672]}, 206=>{:wx=>600, :boundingbox=>[189, -172, 377, 4]}, 207=>{:wx=>600, :boundingbox=>[262, 492, 614, 669]}, 208=>{:wx=>600, :boundingbox=>[49, 231, 661, 285]}, 225=>{:wx=>600, :boundingbox=>[3, 0, 655, 562]}, 227=>{:wx=>600, :boundingbox=>[209, 249, 512, 580]}, 232=>{:wx=>600, :boundingbox=>[47, 0, 607, 562]}, 233=>{:wx=>600, :boundingbox=>[94, -80, 625, 629]}, 234=>{:wx=>600, :boundingbox=>[59, 0, 672, 562]}, 235=>{:wx=>600, :boundingbox=>[210, 249, 535, 580]}, 241=>{:wx=>600, :boundingbox=>[41, -15, 626, 441]}, 245=>{:wx=>600, :boundingbox=>[95, 0, 515, 426]}, 248=>{:wx=>600, :boundingbox=>[95, 0, 587, 629]}, 249=>{:wx=>600, :boundingbox=>[102, -80, 588, 506]}, 250=>{:wx=>600, :boundingbox=>[54, -15, 615, 441]}, 251=>{:wx=>600, :boundingbox=>[48, -15, 617, 629]}, -1=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}}
134
+ courier_boldoblique_metrics = {32=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>600, :boundingbox=>[215, -15, 495, 572]}, 34=>{:wx=>600, :boundingbox=>[211, 277, 585, 562]}, 35=>{:wx=>600, :boundingbox=>[88, -45, 641, 651]}, 36=>{:wx=>600, :boundingbox=>[87, -126, 630, 666]}, 37=>{:wx=>600, :boundingbox=>[101, -15, 625, 616]}, 38=>{:wx=>600, :boundingbox=>[61, -15, 595, 543]}, 39=>{:wx=>600, :boundingbox=>[229, 277, 543, 562]}, 40=>{:wx=>600, :boundingbox=>[265, -102, 592, 616]}, 41=>{:wx=>600, :boundingbox=>[117, -102, 444, 616]}, 42=>{:wx=>600, :boundingbox=>[179, 219, 598, 601]}, 43=>{:wx=>600, :boundingbox=>[114, 39, 596, 478]}, 44=>{:wx=>600, :boundingbox=>[99, -111, 430, 174]}, 45=>{:wx=>600, :boundingbox=>[143, 203, 567, 313]}, 46=>{:wx=>600, :boundingbox=>[206, -15, 427, 171]}, 47=>{:wx=>600, :boundingbox=>[90, -77, 626, 626]}, 48=>{:wx=>600, :boundingbox=>[135, -15, 593, 616]}, 49=>{:wx=>600, :boundingbox=>[93, 0, 562, 616]}, 50=>{:wx=>600, :boundingbox=>[61, 0, 594, 616]}, 51=>{:wx=>600, :boundingbox=>[71, -15, 571, 616]}, 52=>{:wx=>600, :boundingbox=>[81, 0, 559, 616]}, 53=>{:wx=>600, :boundingbox=>[77, -15, 621, 601]}, 54=>{:wx=>600, :boundingbox=>[135, -15, 652, 616]}, 55=>{:wx=>600, :boundingbox=>[147, 0, 622, 601]}, 56=>{:wx=>600, :boundingbox=>[115, -15, 604, 616]}, 57=>{:wx=>600, :boundingbox=>[75, -15, 592, 616]}, 58=>{:wx=>600, :boundingbox=>[205, -15, 480, 425]}, 59=>{:wx=>600, :boundingbox=>[99, -111, 481, 425]}, 60=>{:wx=>600, :boundingbox=>[120, 15, 613, 501]}, 61=>{:wx=>600, :boundingbox=>[96, 118, 614, 398]}, 62=>{:wx=>600, :boundingbox=>[97, 15, 589, 501]}, 63=>{:wx=>600, :boundingbox=>[183, -14, 592, 580]}, 64=>{:wx=>600, :boundingbox=>[65, -15, 642, 616]}, 65=>{:wx=>600, :boundingbox=>[-9, 0, 632, 562]}, 66=>{:wx=>600, :boundingbox=>[30, 0, 630, 562]}, 67=>{:wx=>600, :boundingbox=>[74, -18, 675, 580]}, 68=>{:wx=>600, :boundingbox=>[30, 0, 664, 562]}, 69=>{:wx=>600, :boundingbox=>[25, 0, 670, 562]}, 70=>{:wx=>600, :boundingbox=>[39, 0, 684, 562]}, 71=>{:wx=>600, :boundingbox=>[74, -18, 675, 580]}, 72=>{:wx=>600, :boundingbox=>[20, 0, 700, 562]}, 73=>{:wx=>600, :boundingbox=>[77, 0, 643, 562]}, 74=>{:wx=>600, :boundingbox=>[58, -18, 721, 562]}, 75=>{:wx=>600, :boundingbox=>[21, 0, 692, 562]}, 76=>{:wx=>600, :boundingbox=>[39, 0, 636, 562]}, 77=>{:wx=>600, :boundingbox=>[-2, 0, 722, 562]}, 78=>{:wx=>600, :boundingbox=>[8, -12, 730, 562]}, 79=>{:wx=>600, :boundingbox=>[74, -18, 645, 580]}, 80=>{:wx=>600, :boundingbox=>[48, 0, 643, 562]}, 81=>{:wx=>600, :boundingbox=>[83, -138, 636, 580]}, 82=>{:wx=>600, :boundingbox=>[24, 0, 617, 562]}, 83=>{:wx=>600, :boundingbox=>[54, -22, 673, 582]}, 84=>{:wx=>600, :boundingbox=>[86, 0, 679, 562]}, 85=>{:wx=>600, :boundingbox=>[101, -18, 716, 562]}, 86=>{:wx=>600, :boundingbox=>[84, 0, 733, 562]}, 87=>{:wx=>600, :boundingbox=>[79, 0, 738, 562]}, 88=>{:wx=>600, :boundingbox=>[12, 0, 690, 562]}, 89=>{:wx=>600, :boundingbox=>[109, 0, 709, 562]}, 90=>{:wx=>600, :boundingbox=>[62, 0, 637, 562]}, 91=>{:wx=>600, :boundingbox=>[223, -102, 606, 616]}, 92=>{:wx=>600, :boundingbox=>[222, -77, 496, 626]}, 93=>{:wx=>600, :boundingbox=>[103, -102, 486, 616]}, 94=>{:wx=>600, :boundingbox=>[171, 250, 556, 616]}, 95=>{:wx=>600, :boundingbox=>[-27, -125, 585, -75]}, 96=>{:wx=>600, :boundingbox=>[297, 277, 487, 562]}, 97=>{:wx=>600, :boundingbox=>[61, -15, 593, 454]}, 98=>{:wx=>600, :boundingbox=>[13, -15, 636, 626]}, 99=>{:wx=>600, :boundingbox=>[81, -15, 631, 459]}, 100=>{:wx=>600, :boundingbox=>[60, -15, 645, 626]}, 101=>{:wx=>600, :boundingbox=>[81, -15, 605, 454]}, 102=>{:wx=>600, :boundingbox=>[83, 0, 677, 626]}, 103=>{:wx=>600, :boundingbox=>[40, -146, 674, 454]}, 104=>{:wx=>600, :boundingbox=>[18, 0, 615, 626]}, 105=>{:wx=>600, :boundingbox=>[77, 0, 546, 658]}, 106=>{:wx=>600, :boundingbox=>[36, -146, 580, 658]}, 107=>{:wx=>600, :boundingbox=>[33, 0, 643, 626]}, 108=>{:wx=>600, :boundingbox=>[77, 0, 546, 626]}, 109=>{:wx=>600, :boundingbox=>[-22, 0, 649, 454]}, 110=>{:wx=>600, :boundingbox=>[18, 0, 615, 454]}, 111=>{:wx=>600, :boundingbox=>[71, -15, 622, 454]}, 112=>{:wx=>600, :boundingbox=>[-32, -142, 622, 454]}, 113=>{:wx=>600, :boundingbox=>[60, -142, 685, 454]}, 114=>{:wx=>600, :boundingbox=>[47, 0, 655, 454]}, 115=>{:wx=>600, :boundingbox=>[66, -17, 608, 459]}, 116=>{:wx=>600, :boundingbox=>[118, -15, 567, 562]}, 117=>{:wx=>600, :boundingbox=>[70, -15, 592, 439]}, 118=>{:wx=>600, :boundingbox=>[70, 0, 695, 439]}, 119=>{:wx=>600, :boundingbox=>[53, 0, 712, 439]}, 120=>{:wx=>600, :boundingbox=>[6, 0, 671, 439]}, 121=>{:wx=>600, :boundingbox=>[-21, -142, 695, 439]}, 122=>{:wx=>600, :boundingbox=>[81, 0, 614, 439]}, 123=>{:wx=>600, :boundingbox=>[203, -102, 595, 616]}, 124=>{:wx=>600, :boundingbox=>[201, -250, 505, 750]}, 125=>{:wx=>600, :boundingbox=>[114, -102, 506, 616]}, 126=>{:wx=>600, :boundingbox=>[120, 153, 590, 356]}, 161=>{:wx=>600, :boundingbox=>[196, -146, 477, 449]}, 162=>{:wx=>600, :boundingbox=>[121, -49, 605, 614]}, 163=>{:wx=>600, :boundingbox=>[106, -28, 650, 611]}, 164=>{:wx=>600, :boundingbox=>[22, -60, 708, 661]}, 165=>{:wx=>600, :boundingbox=>[98, 0, 710, 562]}, 166=>{:wx=>600, :boundingbox=>[-57, -131, 702, 616]}, 167=>{:wx=>600, :boundingbox=>[74, -70, 620, 580]}, 168=>{:wx=>600, :boundingbox=>[77, 49, 644, 517]}, 169=>{:wx=>600, :boundingbox=>[303, 277, 493, 562]}, 170=>{:wx=>600, :boundingbox=>[190, 277, 594, 562]}, 171=>{:wx=>600, :boundingbox=>[62, 70, 639, 446]}, 172=>{:wx=>600, :boundingbox=>[195, 70, 545, 446]}, 173=>{:wx=>600, :boundingbox=>[165, 70, 514, 446]}, 174=>{:wx=>600, :boundingbox=>[12, 0, 644, 626]}, 175=>{:wx=>600, :boundingbox=>[12, 0, 644, 626]}, 177=>{:wx=>600, :boundingbox=>[108, 203, 602, 313]}, 178=>{:wx=>600, :boundingbox=>[175, -70, 586, 580]}, 179=>{:wx=>600, :boundingbox=>[121, -70, 587, 580]}, 180=>{:wx=>600, :boundingbox=>[248, 165, 461, 351]}, 182=>{:wx=>600, :boundingbox=>[61, -70, 700, 580]}, 183=>{:wx=>600, :boundingbox=>[196, 132, 523, 430]}, 184=>{:wx=>600, :boundingbox=>[144, -142, 458, 143]}, 185=>{:wx=>600, :boundingbox=>[34, -142, 560, 143]}, 186=>{:wx=>600, :boundingbox=>[119, 277, 645, 562]}, 187=>{:wx=>600, :boundingbox=>[71, 70, 647, 446]}, 188=>{:wx=>600, :boundingbox=>[35, -15, 587, 116]}, 189=>{:wx=>600, :boundingbox=>[-45, -15, 743, 616]}, 191=>{:wx=>600, :boundingbox=>[100, -146, 509, 449]}, 193=>{:wx=>600, :boundingbox=>[272, 508, 503, 661]}, 194=>{:wx=>600, :boundingbox=>[312, 508, 609, 661]}, 195=>{:wx=>600, :boundingbox=>[212, 483, 607, 657]}, 196=>{:wx=>600, :boundingbox=>[199, 493, 643, 636]}, 197=>{:wx=>600, :boundingbox=>[195, 505, 637, 585]}, 198=>{:wx=>600, :boundingbox=>[217, 468, 652, 631]}, 199=>{:wx=>600, :boundingbox=>[348, 498, 493, 638]}, 200=>{:wx=>600, :boundingbox=>[246, 498, 595, 638]}, 202=>{:wx=>600, :boundingbox=>[319, 481, 528, 678]}, 203=>{:wx=>600, :boundingbox=>[168, -206, 368, 0]}, 205=>{:wx=>600, :boundingbox=>[171, 488, 729, 661]}, 206=>{:wx=>600, :boundingbox=>[143, -199, 367, 0]}, 207=>{:wx=>600, :boundingbox=>[238, 493, 633, 667]}, 208=>{:wx=>600, :boundingbox=>[33, 203, 677, 313]}, 225=>{:wx=>600, :boundingbox=>[-29, 0, 708, 562]}, 227=>{:wx=>600, :boundingbox=>[188, 196, 526, 580]}, 232=>{:wx=>600, :boundingbox=>[39, 0, 636, 562]}, 233=>{:wx=>600, :boundingbox=>[48, -22, 673, 584]}, 234=>{:wx=>600, :boundingbox=>[26, 0, 701, 562]}, 235=>{:wx=>600, :boundingbox=>[188, 196, 543, 580]}, 241=>{:wx=>600, :boundingbox=>[21, -15, 652, 454]}, 245=>{:wx=>600, :boundingbox=>[77, 0, 546, 439]}, 248=>{:wx=>600, :boundingbox=>[77, 0, 587, 626]}, 249=>{:wx=>600, :boundingbox=>[54, -24, 638, 463]}, 250=>{:wx=>600, :boundingbox=>[18, -15, 662, 454]}, 251=>{:wx=>600, :boundingbox=>[22, -15, 629, 626]}, -1=>{:wx=>600, :boundingbox=>[0, 0, 0, 0]}}
135
+ symbol_metrics = {32=>{:wx=>250, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>333, :boundingbox=>[128, -17, 240, 672]}, 34=>{:wx=>713, :boundingbox=>[31, 0, 681, 705]}, 35=>{:wx=>500, :boundingbox=>[20, -16, 481, 673]}, 36=>{:wx=>549, :boundingbox=>[25, 0, 478, 707]}, 37=>{:wx=>833, :boundingbox=>[63, -36, 771, 655]}, 38=>{:wx=>778, :boundingbox=>[41, -18, 750, 661]}, 39=>{:wx=>439, :boundingbox=>[48, -17, 414, 500]}, 40=>{:wx=>333, :boundingbox=>[53, -191, 300, 673]}, 41=>{:wx=>333, :boundingbox=>[30, -191, 277, 673]}, 42=>{:wx=>500, :boundingbox=>[65, 134, 427, 551]}, 43=>{:wx=>549, :boundingbox=>[10, 0, 539, 533]}, 44=>{:wx=>250, :boundingbox=>[56, -152, 194, 104]}, 45=>{:wx=>549, :boundingbox=>[11, 233, 535, 288]}, 46=>{:wx=>250, :boundingbox=>[69, -17, 181, 95]}, 47=>{:wx=>278, :boundingbox=>[0, -18, 254, 646]}, 48=>{:wx=>500, :boundingbox=>[24, -14, 476, 685]}, 49=>{:wx=>500, :boundingbox=>[117, 0, 390, 673]}, 50=>{:wx=>500, :boundingbox=>[25, 0, 475, 685]}, 51=>{:wx=>500, :boundingbox=>[43, -14, 435, 685]}, 52=>{:wx=>500, :boundingbox=>[15, 0, 469, 685]}, 53=>{:wx=>500, :boundingbox=>[32, -14, 445, 690]}, 54=>{:wx=>500, :boundingbox=>[34, -14, 468, 685]}, 55=>{:wx=>500, :boundingbox=>[24, -16, 448, 673]}, 56=>{:wx=>500, :boundingbox=>[56, -14, 445, 685]}, 57=>{:wx=>500, :boundingbox=>[30, -18, 459, 685]}, 58=>{:wx=>278, :boundingbox=>[81, -17, 193, 460]}, 59=>{:wx=>278, :boundingbox=>[83, -152, 221, 460]}, 60=>{:wx=>549, :boundingbox=>[26, 0, 523, 522]}, 61=>{:wx=>549, :boundingbox=>[11, 141, 537, 390]}, 62=>{:wx=>549, :boundingbox=>[26, 0, 523, 522]}, 63=>{:wx=>444, :boundingbox=>[70, -17, 412, 686]}, 64=>{:wx=>549, :boundingbox=>[11, 0, 537, 475]}, 65=>{:wx=>722, :boundingbox=>[4, 0, 684, 673]}, 66=>{:wx=>667, :boundingbox=>[29, 0, 592, 673]}, 67=>{:wx=>722, :boundingbox=>[-9, 0, 704, 673]}, 68=>{:wx=>612, :boundingbox=>[6, 0, 608, 688]}, 69=>{:wx=>611, :boundingbox=>[32, 0, 617, 673]}, 70=>{:wx=>763, :boundingbox=>[26, 0, 741, 673]}, 71=>{:wx=>603, :boundingbox=>[24, 0, 609, 673]}, 72=>{:wx=>722, :boundingbox=>[39, 0, 729, 673]}, 73=>{:wx=>333, :boundingbox=>[32, 0, 316, 673]}, 74=>{:wx=>631, :boundingbox=>[18, -18, 623, 689]}, 75=>{:wx=>722, :boundingbox=>[35, 0, 722, 673]}, 76=>{:wx=>686, :boundingbox=>[6, 0, 680, 688]}, 77=>{:wx=>889, :boundingbox=>[28, 0, 887, 673]}, 78=>{:wx=>722, :boundingbox=>[29, -8, 720, 673]}, 79=>{:wx=>722, :boundingbox=>[41, -17, 715, 685]}, 80=>{:wx=>768, :boundingbox=>[25, 0, 745, 673]}, 81=>{:wx=>741, :boundingbox=>[41, -17, 715, 685]}, 82=>{:wx=>556, :boundingbox=>[28, 0, 563, 673]}, 83=>{:wx=>592, :boundingbox=>[5, 0, 589, 673]}, 84=>{:wx=>611, :boundingbox=>[33, 0, 607, 673]}, 85=>{:wx=>690, :boundingbox=>[-8, 0, 694, 673]}, 86=>{:wx=>439, :boundingbox=>[40, -233, 436, 500]}, 87=>{:wx=>768, :boundingbox=>[34, 0, 736, 688]}, 88=>{:wx=>645, :boundingbox=>[40, 0, 599, 673]}, 89=>{:wx=>795, :boundingbox=>[15, 0, 781, 684]}, 90=>{:wx=>611, :boundingbox=>[44, 0, 636, 673]}, 91=>{:wx=>333, :boundingbox=>[86, -155, 299, 674]}, 92=>{:wx=>863, :boundingbox=>[163, 0, 701, 487]}, 93=>{:wx=>333, :boundingbox=>[33, -155, 246, 674]}, 94=>{:wx=>658, :boundingbox=>[15, 0, 652, 674]}, 95=>{:wx=>500, :boundingbox=>[-2, -125, 502, -75]}, 96=>{:wx=>500, :boundingbox=>[480, 881, 1090, 917]}, 97=>{:wx=>631, :boundingbox=>[41, -18, 622, 500]}, 98=>{:wx=>549, :boundingbox=>[61, -223, 515, 741]}, 99=>{:wx=>549, :boundingbox=>[12, -231, 522, 499]}, 100=>{:wx=>494, :boundingbox=>[40, -19, 481, 740]}, 101=>{:wx=>439, :boundingbox=>[22, -19, 427, 502]}, 102=>{:wx=>521, :boundingbox=>[28, -224, 492, 673]}, 103=>{:wx=>411, :boundingbox=>[5, -225, 484, 499]}, 104=>{:wx=>603, :boundingbox=>[0, -202, 527, 514]}, 105=>{:wx=>329, :boundingbox=>[0, -17, 301, 503]}, 106=>{:wx=>603, :boundingbox=>[36, -224, 587, 499]}, 107=>{:wx=>549, :boundingbox=>[33, 0, 558, 501]}, 108=>{:wx=>549, :boundingbox=>[24, -17, 548, 739]}, 109=>{:wx=>576, :boundingbox=>[33, -223, 567, 500]}, 110=>{:wx=>521, :boundingbox=>[-9, -16, 475, 507]}, 111=>{:wx=>549, :boundingbox=>[35, -19, 501, 499]}, 112=>{:wx=>549, :boundingbox=>[10, -19, 530, 487]}, 113=>{:wx=>521, :boundingbox=>[43, -17, 485, 690]}, 114=>{:wx=>549, :boundingbox=>[50, -230, 490, 499]}, 115=>{:wx=>603, :boundingbox=>[30, -21, 588, 500]}, 116=>{:wx=>439, :boundingbox=>[10, -19, 418, 500]}, 117=>{:wx=>576, :boundingbox=>[7, -18, 535, 507]}, 118=>{:wx=>713, :boundingbox=>[12, -18, 671, 583]}, 119=>{:wx=>686, :boundingbox=>[42, -17, 684, 500]}, 120=>{:wx=>493, :boundingbox=>[27, -224, 469, 766]}, 121=>{:wx=>686, :boundingbox=>[12, -228, 701, 500]}, 122=>{:wx=>494, :boundingbox=>[60, -225, 467, 756]}, 123=>{:wx=>480, :boundingbox=>[58, -183, 397, 673]}, 124=>{:wx=>200, :boundingbox=>[65, -293, 135, 707]}, 125=>{:wx=>480, :boundingbox=>[79, -183, 418, 673]}, 126=>{:wx=>549, :boundingbox=>[17, 203, 529, 307]}, 160=>{:wx=>750, :boundingbox=>[20, -12, 714, 685]}, 161=>{:wx=>620, :boundingbox=>[-2, 0, 610, 685]}, 162=>{:wx=>247, :boundingbox=>[27, 459, 228, 735]}, 163=>{:wx=>549, :boundingbox=>[29, 0, 526, 639]}, 164=>{:wx=>167, :boundingbox=>[-180, -12, 340, 677]}, 165=>{:wx=>713, :boundingbox=>[26, 124, 688, 404]}, 166=>{:wx=>500, :boundingbox=>[2, -193, 494, 686]}, 167=>{:wx=>753, :boundingbox=>[86, -26, 660, 533]}, 168=>{:wx=>753, :boundingbox=>[142, -36, 600, 550]}, 169=>{:wx=>753, :boundingbox=>[117, -33, 631, 532]}, 170=>{:wx=>753, :boundingbox=>[113, -36, 629, 548]}, 171=>{:wx=>1042, :boundingbox=>[24, -15, 1024, 511]}, 172=>{:wx=>987, :boundingbox=>[32, -15, 942, 511]}, 173=>{:wx=>603, :boundingbox=>[45, 0, 571, 910]}, 174=>{:wx=>987, :boundingbox=>[49, -15, 959, 511]}, 175=>{:wx=>603, :boundingbox=>[45, -22, 571, 888]}, 176=>{:wx=>400, :boundingbox=>[50, 385, 350, 685]}, 177=>{:wx=>549, :boundingbox=>[10, 0, 539, 645]}, 178=>{:wx=>411, :boundingbox=>[20, 459, 413, 737]}, 179=>{:wx=>549, :boundingbox=>[29, 0, 526, 639]}, 180=>{:wx=>549, :boundingbox=>[17, 8, 533, 524]}, 181=>{:wx=>713, :boundingbox=>[27, 123, 639, 404]}, 182=>{:wx=>494, :boundingbox=>[26, -20, 462, 746]}, 183=>{:wx=>460, :boundingbox=>[50, 113, 410, 473]}, 184=>{:wx=>549, :boundingbox=>[10, 71, 536, 456]}, 185=>{:wx=>549, :boundingbox=>[15, -25, 540, 549]}, 186=>{:wx=>549, :boundingbox=>[14, 82, 538, 443]}, 187=>{:wx=>549, :boundingbox=>[14, 135, 527, 394]}, 188=>{:wx=>1000, :boundingbox=>[111, -17, 889, 95]}, 189=>{:wx=>603, :boundingbox=>[280, -120, 336, 1010]}, 190=>{:wx=>1000, :boundingbox=>[-60, 220, 1050, 276]}, 191=>{:wx=>658, :boundingbox=>[15, -16, 602, 629]}, 192=>{:wx=>823, :boundingbox=>[175, -18, 661, 658]}, 193=>{:wx=>686, :boundingbox=>[10, -53, 578, 740]}, 194=>{:wx=>795, :boundingbox=>[26, -15, 759, 734]}, 195=>{:wx=>987, :boundingbox=>[159, -211, 870, 573]}, 196=>{:wx=>768, :boundingbox=>[43, -17, 733, 673]}, 197=>{:wx=>768, :boundingbox=>[43, -15, 733, 675]}, 198=>{:wx=>823, :boundingbox=>[39, -24, 781, 719]}, 199=>{:wx=>768, :boundingbox=>[40, 0, 732, 509]}, 200=>{:wx=>768, :boundingbox=>[40, -17, 732, 492]}, 201=>{:wx=>713, :boundingbox=>[20, 0, 673, 470]}, 202=>{:wx=>713, :boundingbox=>[20, -125, 673, 470]}, 203=>{:wx=>713, :boundingbox=>[36, -70, 690, 540]}, 204=>{:wx=>713, :boundingbox=>[37, 0, 690, 470]}, 205=>{:wx=>713, :boundingbox=>[37, -125, 690, 470]}, 206=>{:wx=>713, :boundingbox=>[45, 0, 505, 468]}, 207=>{:wx=>713, :boundingbox=>[45, -58, 505, 555]}, 208=>{:wx=>768, :boundingbox=>[26, 0, 738, 673]}, 209=>{:wx=>713, :boundingbox=>[36, -19, 681, 718]}, 210=>{:wx=>790, :boundingbox=>[50, -17, 740, 673]}, 211=>{:wx=>790, :boundingbox=>[51, -15, 741, 675]}, 212=>{:wx=>890, :boundingbox=>[18, 293, 855, 673]}, 213=>{:wx=>823, :boundingbox=>[25, -101, 803, 751]}, 214=>{:wx=>549, :boundingbox=>[10, -38, 515, 917]}, 215=>{:wx=>250, :boundingbox=>[69, 210, 169, 310]}, 216=>{:wx=>713, :boundingbox=>[15, 0, 680, 288]}, 217=>{:wx=>603, :boundingbox=>[23, 0, 583, 454]}, 218=>{:wx=>603, :boundingbox=>[30, 0, 578, 477]}, 219=>{:wx=>1042, :boundingbox=>[27, -20, 1023, 510]}, 220=>{:wx=>987, :boundingbox=>[30, -15, 939, 513]}, 221=>{:wx=>603, :boundingbox=>[39, 2, 567, 911]}, 222=>{:wx=>987, :boundingbox=>[45, -20, 954, 508]}, 223=>{:wx=>603, :boundingbox=>[44, -19, 572, 890]}, 224=>{:wx=>494, :boundingbox=>[18, 0, 466, 745]}, 225=>{:wx=>329, :boundingbox=>[25, -198, 306, 746]}, 226=>{:wx=>790, :boundingbox=>[50, -20, 740, 670]}, 227=>{:wx=>790, :boundingbox=>[49, -15, 739, 675]}, 228=>{:wx=>786, :boundingbox=>[5, 293, 725, 673]}, 229=>{:wx=>713, :boundingbox=>[14, -108, 695, 752]}, 230=>{:wx=>384, :boundingbox=>[24, -293, 436, 926]}, 231=>{:wx=>384, :boundingbox=>[24, -85, 108, 925]}, 232=>{:wx=>384, :boundingbox=>[24, -293, 436, 926]}, 233=>{:wx=>384, :boundingbox=>[0, -80, 349, 926]}, 234=>{:wx=>384, :boundingbox=>[0, -79, 77, 925]}, 235=>{:wx=>384, :boundingbox=>[0, -80, 349, 926]}, 236=>{:wx=>494, :boundingbox=>[209, -85, 445, 925]}, 237=>{:wx=>494, :boundingbox=>[20, -85, 284, 935]}, 238=>{:wx=>494, :boundingbox=>[209, -75, 445, 935]}, 239=>{:wx=>494, :boundingbox=>[209, -85, 284, 935]}, 241=>{:wx=>329, :boundingbox=>[21, -198, 302, 746]}, 242=>{:wx=>274, :boundingbox=>[2, -107, 291, 916]}, 243=>{:wx=>686, :boundingbox=>[308, -88, 675, 920]}, 244=>{:wx=>686, :boundingbox=>[308, -88, 378, 975]}, 245=>{:wx=>686, :boundingbox=>[11, -87, 378, 921]}, 246=>{:wx=>384, :boundingbox=>[54, -293, 466, 926]}, 247=>{:wx=>384, :boundingbox=>[382, -85, 466, 925]}, 248=>{:wx=>384, :boundingbox=>[54, -293, 466, 926]}, 249=>{:wx=>384, :boundingbox=>[22, -80, 371, 926]}, 250=>{:wx=>384, :boundingbox=>[294, -79, 371, 925]}, 251=>{:wx=>384, :boundingbox=>[22, -80, 371, 926]}, 252=>{:wx=>494, :boundingbox=>[48, -85, 284, 925]}, 253=>{:wx=>494, :boundingbox=>[209, -85, 473, 935]}, 254=>{:wx=>494, :boundingbox=>[48, -75, 284, 935]}, -1=>{:wx=>790, :boundingbox=>[56, -3, 733, 808]}}
136
+ zapfdingbats_metrics = {32=>{:wx=>278, :boundingbox=>[0, 0, 0, 0]}, 33=>{:wx=>974, :boundingbox=>[35, 72, 939, 621]}, 34=>{:wx=>961, :boundingbox=>[35, 81, 927, 611]}, 35=>{:wx=>974, :boundingbox=>[35, 72, 939, 621]}, 36=>{:wx=>980, :boundingbox=>[35, 0, 945, 692]}, 37=>{:wx=>719, :boundingbox=>[34, 139, 685, 566]}, 38=>{:wx=>789, :boundingbox=>[35, -14, 755, 705]}, 39=>{:wx=>790, :boundingbox=>[35, -14, 755, 705]}, 40=>{:wx=>791, :boundingbox=>[35, -13, 761, 705]}, 41=>{:wx=>690, :boundingbox=>[34, 138, 655, 553]}, 42=>{:wx=>960, :boundingbox=>[35, 123, 925, 568]}, 43=>{:wx=>939, :boundingbox=>[35, 134, 904, 559]}, 44=>{:wx=>549, :boundingbox=>[29, -11, 516, 705]}, 45=>{:wx=>855, :boundingbox=>[34, 59, 820, 632]}, 46=>{:wx=>911, :boundingbox=>[35, 50, 876, 642]}, 47=>{:wx=>933, :boundingbox=>[35, 139, 899, 550]}, 48=>{:wx=>911, :boundingbox=>[35, 50, 876, 642]}, 49=>{:wx=>945, :boundingbox=>[35, 139, 909, 553]}, 50=>{:wx=>974, :boundingbox=>[35, 104, 938, 587]}, 51=>{:wx=>755, :boundingbox=>[34, -13, 721, 705]}, 52=>{:wx=>846, :boundingbox=>[36, -14, 811, 705]}, 53=>{:wx=>762, :boundingbox=>[35, 0, 727, 692]}, 54=>{:wx=>761, :boundingbox=>[35, 0, 727, 692]}, 55=>{:wx=>571, :boundingbox=>[-1, -68, 571, 661]}, 56=>{:wx=>677, :boundingbox=>[36, -13, 642, 705]}, 57=>{:wx=>763, :boundingbox=>[35, 0, 728, 692]}, 58=>{:wx=>760, :boundingbox=>[35, 0, 726, 692]}, 59=>{:wx=>759, :boundingbox=>[35, 0, 725, 692]}, 60=>{:wx=>754, :boundingbox=>[35, 0, 720, 692]}, 61=>{:wx=>494, :boundingbox=>[35, 0, 460, 692]}, 62=>{:wx=>552, :boundingbox=>[35, 0, 517, 692]}, 63=>{:wx=>537, :boundingbox=>[35, 0, 503, 692]}, 64=>{:wx=>577, :boundingbox=>[35, 96, 542, 596]}, 65=>{:wx=>692, :boundingbox=>[35, -14, 657, 705]}, 66=>{:wx=>786, :boundingbox=>[35, -14, 751, 705]}, 67=>{:wx=>788, :boundingbox=>[35, -14, 752, 705]}, 68=>{:wx=>788, :boundingbox=>[35, -14, 753, 705]}, 69=>{:wx=>790, :boundingbox=>[35, -14, 756, 705]}, 70=>{:wx=>793, :boundingbox=>[35, -13, 759, 705]}, 71=>{:wx=>794, :boundingbox=>[35, -13, 759, 705]}, 72=>{:wx=>816, :boundingbox=>[35, -14, 782, 705]}, 73=>{:wx=>823, :boundingbox=>[35, -14, 787, 705]}, 74=>{:wx=>789, :boundingbox=>[35, -14, 754, 705]}, 75=>{:wx=>841, :boundingbox=>[35, -14, 807, 705]}, 76=>{:wx=>823, :boundingbox=>[35, -14, 789, 705]}, 77=>{:wx=>833, :boundingbox=>[35, -14, 798, 705]}, 78=>{:wx=>816, :boundingbox=>[35, -13, 782, 705]}, 79=>{:wx=>831, :boundingbox=>[35, -14, 796, 705]}, 80=>{:wx=>923, :boundingbox=>[35, -14, 888, 705]}, 81=>{:wx=>744, :boundingbox=>[35, 0, 710, 692]}, 82=>{:wx=>723, :boundingbox=>[35, 0, 688, 692]}, 83=>{:wx=>749, :boundingbox=>[35, 0, 714, 692]}, 84=>{:wx=>790, :boundingbox=>[34, -14, 756, 705]}, 85=>{:wx=>792, :boundingbox=>[35, -14, 758, 705]}, 86=>{:wx=>695, :boundingbox=>[35, -14, 661, 706]}, 87=>{:wx=>776, :boundingbox=>[35, -6, 741, 699]}, 88=>{:wx=>768, :boundingbox=>[35, -7, 734, 699]}, 89=>{:wx=>792, :boundingbox=>[35, -14, 757, 705]}, 90=>{:wx=>759, :boundingbox=>[35, 0, 725, 692]}, 91=>{:wx=>707, :boundingbox=>[35, -13, 672, 704]}, 92=>{:wx=>708, :boundingbox=>[35, -14, 672, 705]}, 93=>{:wx=>682, :boundingbox=>[35, -14, 647, 705]}, 94=>{:wx=>701, :boundingbox=>[35, -14, 666, 705]}, 95=>{:wx=>826, :boundingbox=>[35, -14, 791, 705]}, 96=>{:wx=>815, :boundingbox=>[35, -14, 780, 705]}, 97=>{:wx=>789, :boundingbox=>[35, -14, 754, 705]}, 98=>{:wx=>789, :boundingbox=>[35, -14, 754, 705]}, 99=>{:wx=>707, :boundingbox=>[34, -14, 673, 705]}, 100=>{:wx=>687, :boundingbox=>[36, 0, 651, 692]}, 101=>{:wx=>696, :boundingbox=>[35, 0, 661, 691]}, 102=>{:wx=>689, :boundingbox=>[35, 0, 655, 692]}, 103=>{:wx=>786, :boundingbox=>[34, -14, 751, 705]}, 104=>{:wx=>787, :boundingbox=>[35, -14, 752, 705]}, 105=>{:wx=>713, :boundingbox=>[35, -14, 678, 705]}, 106=>{:wx=>791, :boundingbox=>[35, -14, 756, 705]}, 107=>{:wx=>785, :boundingbox=>[36, -14, 751, 705]}, 108=>{:wx=>791, :boundingbox=>[35, -14, 757, 705]}, 109=>{:wx=>873, :boundingbox=>[35, -14, 838, 705]}, 110=>{:wx=>761, :boundingbox=>[35, 0, 726, 692]}, 111=>{:wx=>762, :boundingbox=>[35, 0, 727, 692]}, 112=>{:wx=>762, :boundingbox=>[35, 0, 727, 692]}, 113=>{:wx=>759, :boundingbox=>[35, 0, 725, 692]}, 114=>{:wx=>759, :boundingbox=>[35, 0, 725, 692]}, 115=>{:wx=>892, :boundingbox=>[35, 0, 858, 705]}, 116=>{:wx=>892, :boundingbox=>[35, -14, 858, 692]}, 117=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 118=>{:wx=>784, :boundingbox=>[35, -14, 749, 705]}, 119=>{:wx=>438, :boundingbox=>[35, -14, 403, 705]}, 120=>{:wx=>138, :boundingbox=>[35, 0, 104, 692]}, 121=>{:wx=>277, :boundingbox=>[35, 0, 242, 692]}, 122=>{:wx=>415, :boundingbox=>[35, 0, 380, 692]}, 123=>{:wx=>392, :boundingbox=>[35, 263, 357, 705]}, 124=>{:wx=>392, :boundingbox=>[34, 263, 357, 705]}, 125=>{:wx=>668, :boundingbox=>[35, 263, 633, 705]}, 126=>{:wx=>668, :boundingbox=>[36, 263, 634, 705]}, 128=>{:wx=>390, :boundingbox=>[35, -14, 356, 705]}, 129=>{:wx=>390, :boundingbox=>[35, -14, 355, 705]}, 130=>{:wx=>317, :boundingbox=>[35, 0, 283, 692]}, 131=>{:wx=>317, :boundingbox=>[35, 0, 283, 692]}, 132=>{:wx=>276, :boundingbox=>[35, 0, 242, 692]}, 133=>{:wx=>276, :boundingbox=>[35, 0, 242, 692]}, 134=>{:wx=>509, :boundingbox=>[35, 0, 475, 692]}, 135=>{:wx=>509, :boundingbox=>[35, 0, 475, 692]}, 136=>{:wx=>410, :boundingbox=>[35, 0, 375, 692]}, 137=>{:wx=>410, :boundingbox=>[35, 0, 375, 692]}, 138=>{:wx=>234, :boundingbox=>[35, -14, 199, 705]}, 139=>{:wx=>234, :boundingbox=>[35, -14, 199, 705]}, 140=>{:wx=>334, :boundingbox=>[35, 0, 299, 692]}, 141=>{:wx=>334, :boundingbox=>[35, 0, 299, 692]}, 161=>{:wx=>732, :boundingbox=>[35, -143, 697, 806]}, 162=>{:wx=>544, :boundingbox=>[56, -14, 488, 706]}, 163=>{:wx=>544, :boundingbox=>[34, -14, 508, 705]}, 164=>{:wx=>910, :boundingbox=>[35, 40, 875, 651]}, 165=>{:wx=>667, :boundingbox=>[35, -14, 633, 705]}, 166=>{:wx=>760, :boundingbox=>[35, -14, 726, 705]}, 167=>{:wx=>760, :boundingbox=>[0, 121, 758, 569]}, 168=>{:wx=>776, :boundingbox=>[35, 0, 741, 705]}, 169=>{:wx=>595, :boundingbox=>[34, -14, 560, 705]}, 170=>{:wx=>694, :boundingbox=>[35, -14, 659, 705]}, 171=>{:wx=>626, :boundingbox=>[34, 0, 591, 705]}, 172=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 173=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 174=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 175=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 176=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 177=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 178=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 179=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 180=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 181=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 182=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 183=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 184=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 185=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 186=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 187=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 188=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 189=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 190=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 191=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 192=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 193=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 194=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 195=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 196=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 197=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 198=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 199=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 200=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 201=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 202=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 203=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 204=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 205=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 206=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 207=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 208=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 209=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 210=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 211=>{:wx=>788, :boundingbox=>[35, -14, 754, 705]}, 212=>{:wx=>894, :boundingbox=>[35, 58, 860, 634]}, 213=>{:wx=>838, :boundingbox=>[35, 152, 803, 540]}, 214=>{:wx=>1016, :boundingbox=>[34, 152, 981, 540]}, 215=>{:wx=>458, :boundingbox=>[35, -127, 422, 820]}, 216=>{:wx=>748, :boundingbox=>[35, 94, 698, 597]}, 217=>{:wx=>924, :boundingbox=>[35, 140, 890, 552]}, 218=>{:wx=>748, :boundingbox=>[35, 94, 698, 597]}, 219=>{:wx=>918, :boundingbox=>[35, 166, 884, 526]}, 220=>{:wx=>927, :boundingbox=>[35, 32, 892, 660]}, 221=>{:wx=>928, :boundingbox=>[35, 129, 891, 562]}, 222=>{:wx=>928, :boundingbox=>[35, 128, 893, 563]}, 223=>{:wx=>834, :boundingbox=>[35, 155, 799, 537]}, 224=>{:wx=>873, :boundingbox=>[35, 93, 838, 599]}, 225=>{:wx=>828, :boundingbox=>[35, 104, 791, 588]}, 226=>{:wx=>924, :boundingbox=>[35, 98, 889, 594]}, 227=>{:wx=>924, :boundingbox=>[35, 98, 889, 594]}, 228=>{:wx=>917, :boundingbox=>[35, 0, 882, 692]}, 229=>{:wx=>930, :boundingbox=>[35, 84, 896, 608]}, 230=>{:wx=>931, :boundingbox=>[35, 84, 896, 608]}, 231=>{:wx=>463, :boundingbox=>[35, -99, 429, 791]}, 232=>{:wx=>883, :boundingbox=>[35, 71, 848, 623]}, 233=>{:wx=>836, :boundingbox=>[35, 44, 802, 648]}, 234=>{:wx=>836, :boundingbox=>[35, 44, 802, 648]}, 235=>{:wx=>867, :boundingbox=>[35, 101, 832, 591]}, 236=>{:wx=>867, :boundingbox=>[35, 101, 832, 591]}, 237=>{:wx=>696, :boundingbox=>[35, 44, 661, 648]}, 238=>{:wx=>696, :boundingbox=>[35, 44, 661, 648]}, 239=>{:wx=>874, :boundingbox=>[35, 77, 840, 619]}, 241=>{:wx=>874, :boundingbox=>[35, 73, 840, 615]}, 242=>{:wx=>760, :boundingbox=>[35, 0, 725, 692]}, 243=>{:wx=>946, :boundingbox=>[35, 160, 911, 533]}, 244=>{:wx=>771, :boundingbox=>[34, 37, 736, 655]}, 245=>{:wx=>865, :boundingbox=>[35, 207, 830, 481]}, 246=>{:wx=>771, :boundingbox=>[34, 37, 736, 655]}, 247=>{:wx=>888, :boundingbox=>[34, -19, 853, 712]}, 248=>{:wx=>967, :boundingbox=>[35, 124, 932, 568]}, 249=>{:wx=>888, :boundingbox=>[34, -19, 853, 712]}, 250=>{:wx=>831, :boundingbox=>[35, 113, 796, 579]}, 251=>{:wx=>873, :boundingbox=>[36, 118, 838, 578]}, 252=>{:wx=>927, :boundingbox=>[35, 150, 891, 542]}, 253=>{:wx=>970, :boundingbox=>[35, 76, 931, 616]}, 254=>{:wx=>918, :boundingbox=>[34, 99, 884, 593]}}
137
+
138
+ # make two correlating arrays (indexes reffer to the same data), one for font names and the other for the fonts matrics.
139
+ fonts_metrics_array = [ times_metrics, times_bold_metrics, times_italic_metrics, times_bolditalic_metrics,
140
+ helvetica_metrics, helvetica_bold_metrics, helvetica_oblique_metrics, helvetica_oblique_metrics,
141
+ courier_metrics, courier_bold_metrics, courier_oblique_metrics, courier_boldoblique_metrics,
142
+ symbol_metrics, zapfdingbats_metrics]
143
+ fonts_names_array = [:"Times-Roman",
144
+ :"Times-Bold",
145
+ :"Times-Italic",
146
+ :"Times-BoldItalic",
147
+ :Helvetica,
148
+ :"Helvetica-Bold",
149
+ :"Helvetica-BoldOblique",
150
+ :"Helvetica-Oblique",
151
+ :Courier,
152
+ :"Courier-Bold",
153
+ :"Courier-Oblique",
154
+ :"Courier-BoldOblique",
155
+ :Symbol,
156
+ :ZapfDingbats ]
157
+
158
+ # create the font object and register the font for each one of the 14 fonts
159
+ fonts_names_array.each_index do |i|
160
+ CombinePDF::Fonts.register_font fonts_names_array[i], fonts_metrics_array[i], { Type: :Font, Subtype: :Type1, BaseFont: fonts_names_array[i]}
161
+ end
162
+ end
163
+
164
+ protected
165
+ # the Hash listing all the fonts.
166
+ FONTS_LIBRARY = {}
167
+ end
168
+ end
169
+
170
+
171
+
172
+
173
+
174
+
@@ -278,18 +278,19 @@ module CombinePDF
278
278
  return self #return self object for injection chaining (pdf << page << page << page)
279
279
  end
280
280
 
281
- # and page numbers to the PDF
281
+ # LATIN ONLY - NO UNICODE SUPPORT YET
282
+ # add page numbers to the PDF
282
283
  # options:: a Hash of options setting the behavior and format of the page numbers:
283
- # - :number_format a string representing the format for page number. defaults to ' - %d - '.
284
+ # - :number_format a string representing the format for page number. defaults to ' - %s - ' (allows for letter numbering as well, such as "a", "b"...).
284
285
  # - :number_location an Array containing the location for the page numbers, can be :top, :buttom, :top_left, :top_right, :bottom_left, :bottom_right. defaults to [:top, :buttom].
285
- # - :start_at a Fixnum that sets the number for first page number. defaults to 1.
286
+ # - :start_at a Fixnum that sets the number for first page number. also accepts a letter ("a") for letter numbering. defaults to 1.
286
287
  # - :margin_from_height a number (PDF points) for the top and buttom margins. defaults to 45.
287
288
  # - :margin_from_side a number (PDF points) for the left and right margins. defaults to 15.
288
289
  # the options Hash can also take all the options for PDFWriter.textbox.
289
290
  # defaults to font_name: :Helvetica, font_size: 12 and no box (:border_width => 0, :box_color => nil).
290
291
  def number_pages(options = {})
291
292
  opt = {
292
- number_format: ' - %d - ',
293
+ number_format: ' - %s - ',
293
294
  number_location: [:top, :bottom],
294
295
  start_at: 1,
295
296
  font_size: 12,
@@ -351,7 +352,7 @@ module CombinePDF
351
352
  stamp.textbox text, {x: x, y: y }.merge(opt)
352
353
  end
353
354
  page << stamp
354
- page_number += 1
355
+ page_number = page_number.succ
355
356
  end
356
357
  end
357
358
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: combine_pdf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Boaz Segev
@@ -37,24 +37,10 @@ files:
37
37
  - lib/combine_pdf/combine_pdf_basic_writer.rb
38
38
  - lib/combine_pdf/combine_pdf_decrypt.rb
39
39
  - lib/combine_pdf/combine_pdf_filter.rb
40
+ - lib/combine_pdf/combine_pdf_fonts.rb
40
41
  - lib/combine_pdf/combine_pdf_operations.rb
41
42
  - lib/combine_pdf/combine_pdf_parser.rb
42
43
  - lib/combine_pdf/combine_pdf_pdf.rb
43
- - lib/combine_pdf/font_metrics/courier-bold_metrics.rb
44
- - lib/combine_pdf/font_metrics/courier-boldoblique_metrics.rb
45
- - lib/combine_pdf/font_metrics/courier-oblique_metrics.rb
46
- - lib/combine_pdf/font_metrics/courier_metrics.rb
47
- - lib/combine_pdf/font_metrics/helvetica-bold_metrics.rb
48
- - lib/combine_pdf/font_metrics/helvetica-boldoblique_metrics.rb
49
- - lib/combine_pdf/font_metrics/helvetica-oblique_metrics.rb
50
- - lib/combine_pdf/font_metrics/helvetica_metrics.rb
51
- - lib/combine_pdf/font_metrics/metrics_dictionary.rb
52
- - lib/combine_pdf/font_metrics/symbol_metrics.rb
53
- - lib/combine_pdf/font_metrics/times-bold_metrics.rb
54
- - lib/combine_pdf/font_metrics/times-bolditalic_metrics.rb
55
- - lib/combine_pdf/font_metrics/times-italic_metrics.rb
56
- - lib/combine_pdf/font_metrics/times-roman_metrics.rb
57
- - lib/combine_pdf/font_metrics/zapfdingbats_metrics.rb
58
44
  homepage: https://github.com/boazsegev/combine_pdf
59
45
  licenses:
60
46
  - GPLv3
@@ -1,2212 +0,0 @@
1
- module CombinePDF
2
- class PDFWriter < Hash
3
- protected
4
- # with thanks to Jan Krutisch, the creator of the afm gem.
5
- COURIER_BOLD_METRICS =
6
- {"space"=>{:charcode=>32,
7
- :wx=>600,
8
- :name=>"space",
9
- :boundingbox=>[0,
10
- 0,
11
- 0,
12
- 0]},
13
- "exclam"=>{:charcode=>33,
14
- :wx=>600,
15
- :name=>"exclam",
16
- :boundingbox=>[202,
17
- -15,
18
- 398,
19
- 572]},
20
- "quotedbl"=>{:charcode=>34,
21
- :wx=>600,
22
- :name=>"quotedbl",
23
- :boundingbox=>[135,
24
- 277,
25
- 465,
26
- 562]},
27
- "numbersign"=>{:charcode=>35,
28
- :wx=>600,
29
- :name=>"numbersign",
30
- :boundingbox=>[56,
31
- -45,
32
- 544,
33
- 651]},
34
- "dollar"=>{:charcode=>36,
35
- :wx=>600,
36
- :name=>"dollar",
37
- :boundingbox=>[82,
38
- -126,
39
- 519,
40
- 666]},
41
- "percent"=>{:charcode=>37,
42
- :wx=>600,
43
- :name=>"percent",
44
- :boundingbox=>[5,
45
- -15,
46
- 595,
47
- 616]},
48
- "ampersand"=>{:charcode=>38,
49
- :wx=>600,
50
- :name=>"ampersand",
51
- :boundingbox=>[36,
52
- -15,
53
- 546,
54
- 543]},
55
- "quoteright"=>{:charcode=>39,
56
- :wx=>600,
57
- :name=>"quoteright",
58
- :boundingbox=>[171,
59
- 277,
60
- 423,
61
- 562]},
62
- "parenleft"=>{:charcode=>40,
63
- :wx=>600,
64
- :name=>"parenleft",
65
- :boundingbox=>[219,
66
- -102,
67
- 461,
68
- 616]},
69
- "parenright"=>{:charcode=>41,
70
- :wx=>600,
71
- :name=>"parenright",
72
- :boundingbox=>[139,
73
- -102,
74
- 381,
75
- 616]},
76
- "asterisk"=>{:charcode=>42,
77
- :wx=>600,
78
- :name=>"asterisk",
79
- :boundingbox=>[91,
80
- 219,
81
- 509,
82
- 601]},
83
- "plus"=>{:charcode=>43,
84
- :wx=>600,
85
- :name=>"plus",
86
- :boundingbox=>[71,
87
- 39,
88
- 529,
89
- 478]},
90
- "comma"=>{:charcode=>44,
91
- :wx=>600,
92
- :name=>"comma",
93
- :boundingbox=>[123,
94
- -111,
95
- 393,
96
- 174]},
97
- "hyphen"=>{:charcode=>45,
98
- :wx=>600,
99
- :name=>"hyphen",
100
- :boundingbox=>[100,
101
- 203,
102
- 500,
103
- 313]},
104
- "period"=>{:charcode=>46,
105
- :wx=>600,
106
- :name=>"period",
107
- :boundingbox=>[192,
108
- -15,
109
- 408,
110
- 171]},
111
- "slash"=>{:charcode=>47,
112
- :wx=>600,
113
- :name=>"slash",
114
- :boundingbox=>[98,
115
- -77,
116
- 502,
117
- 626]},
118
- "zero"=>{:charcode=>48,
119
- :wx=>600,
120
- :name=>"zero",
121
- :boundingbox=>[87,
122
- -15,
123
- 513,
124
- 616]},
125
- "one"=>{:charcode=>49,
126
- :wx=>600,
127
- :name=>"one",
128
- :boundingbox=>[81,
129
- 0,
130
- 539,
131
- 616]},
132
- "two"=>{:charcode=>50,
133
- :wx=>600,
134
- :name=>"two",
135
- :boundingbox=>[61,
136
- 0,
137
- 499,
138
- 616]},
139
- "three"=>{:charcode=>51,
140
- :wx=>600,
141
- :name=>"three",
142
- :boundingbox=>[63,
143
- -15,
144
- 501,
145
- 616]},
146
- "four"=>{:charcode=>52,
147
- :wx=>600,
148
- :name=>"four",
149
- :boundingbox=>[53,
150
- 0,
151
- 507,
152
- 616]},
153
- "five"=>{:charcode=>53,
154
- :wx=>600,
155
- :name=>"five",
156
- :boundingbox=>[70,
157
- -15,
158
- 521,
159
- 601]},
160
- "six"=>{:charcode=>54,
161
- :wx=>600,
162
- :name=>"six",
163
- :boundingbox=>[90,
164
- -15,
165
- 521,
166
- 616]},
167
- "seven"=>{:charcode=>55,
168
- :wx=>600,
169
- :name=>"seven",
170
- :boundingbox=>[55,
171
- 0,
172
- 494,
173
- 601]},
174
- "eight"=>{:charcode=>56,
175
- :wx=>600,
176
- :name=>"eight",
177
- :boundingbox=>[83,
178
- -15,
179
- 517,
180
- 616]},
181
- "nine"=>{:charcode=>57,
182
- :wx=>600,
183
- :name=>"nine",
184
- :boundingbox=>[79,
185
- -15,
186
- 510,
187
- 616]},
188
- "colon"=>{:charcode=>58,
189
- :wx=>600,
190
- :name=>"colon",
191
- :boundingbox=>[191,
192
- -15,
193
- 407,
194
- 425]},
195
- "semicolon"=>{:charcode=>59,
196
- :wx=>600,
197
- :name=>"semicolon",
198
- :boundingbox=>[123,
199
- -111,
200
- 408,
201
- 425]},
202
- "less"=>{:charcode=>60,
203
- :wx=>600,
204
- :name=>"less",
205
- :boundingbox=>[66,
206
- 15,
207
- 523,
208
- 501]},
209
- "equal"=>{:charcode=>61,
210
- :wx=>600,
211
- :name=>"equal",
212
- :boundingbox=>[71,
213
- 118,
214
- 529,
215
- 398]},
216
- "greater"=>{:charcode=>62,
217
- :wx=>600,
218
- :name=>"greater",
219
- :boundingbox=>[77,
220
- 15,
221
- 534,
222
- 501]},
223
- "question"=>{:charcode=>63,
224
- :wx=>600,
225
- :name=>"question",
226
- :boundingbox=>[98,
227
- -14,
228
- 501,
229
- 580]},
230
- "at"=>{:charcode=>64,
231
- :wx=>600,
232
- :name=>"at",
233
- :boundingbox=>[16,
234
- -15,
235
- 584,
236
- 616]},
237
- "A"=>{:charcode=>65,
238
- :wx=>600,
239
- :name=>"A",
240
- :boundingbox=>[-9,
241
- 0,
242
- 609,
243
- 562]},
244
- "B"=>{:charcode=>66,
245
- :wx=>600,
246
- :name=>"B",
247
- :boundingbox=>[30,
248
- 0,
249
- 573,
250
- 562]},
251
- "C"=>{:charcode=>67,
252
- :wx=>600,
253
- :name=>"C",
254
- :boundingbox=>[22,
255
- -18,
256
- 560,
257
- 580]},
258
- "D"=>{:charcode=>68,
259
- :wx=>600,
260
- :name=>"D",
261
- :boundingbox=>[30,
262
- 0,
263
- 594,
264
- 562]},
265
- "E"=>{:charcode=>69,
266
- :wx=>600,
267
- :name=>"E",
268
- :boundingbox=>[25,
269
- 0,
270
- 560,
271
- 562]},
272
- "F"=>{:charcode=>70,
273
- :wx=>600,
274
- :name=>"F",
275
- :boundingbox=>[39,
276
- 0,
277
- 570,
278
- 562]},
279
- "G"=>{:charcode=>71,
280
- :wx=>600,
281
- :name=>"G",
282
- :boundingbox=>[22,
283
- -18,
284
- 594,
285
- 580]},
286
- "H"=>{:charcode=>72,
287
- :wx=>600,
288
- :name=>"H",
289
- :boundingbox=>[20,
290
- 0,
291
- 580,
292
- 562]},
293
- "I"=>{:charcode=>73,
294
- :wx=>600,
295
- :name=>"I",
296
- :boundingbox=>[77,
297
- 0,
298
- 523,
299
- 562]},
300
- "J"=>{:charcode=>74,
301
- :wx=>600,
302
- :name=>"J",
303
- :boundingbox=>[37,
304
- -18,
305
- 601,
306
- 562]},
307
- "K"=>{:charcode=>75,
308
- :wx=>600,
309
- :name=>"K",
310
- :boundingbox=>[21,
311
- 0,
312
- 599,
313
- 562]},
314
- "L"=>{:charcode=>76,
315
- :wx=>600,
316
- :name=>"L",
317
- :boundingbox=>[39,
318
- 0,
319
- 578,
320
- 562]},
321
- "M"=>{:charcode=>77,
322
- :wx=>600,
323
- :name=>"M",
324
- :boundingbox=>[-2,
325
- 0,
326
- 602,
327
- 562]},
328
- "N"=>{:charcode=>78,
329
- :wx=>600,
330
- :name=>"N",
331
- :boundingbox=>[8,
332
- -12,
333
- 610,
334
- 562]},
335
- "O"=>{:charcode=>79,
336
- :wx=>600,
337
- :name=>"O",
338
- :boundingbox=>[22,
339
- -18,
340
- 578,
341
- 580]},
342
- "P"=>{:charcode=>80,
343
- :wx=>600,
344
- :name=>"P",
345
- :boundingbox=>[48,
346
- 0,
347
- 559,
348
- 562]},
349
- "Q"=>{:charcode=>81,
350
- :wx=>600,
351
- :name=>"Q",
352
- :boundingbox=>[32,
353
- -138,
354
- 578,
355
- 580]},
356
- "R"=>{:charcode=>82,
357
- :wx=>600,
358
- :name=>"R",
359
- :boundingbox=>[24,
360
- 0,
361
- 599,
362
- 562]},
363
- "S"=>{:charcode=>83,
364
- :wx=>600,
365
- :name=>"S",
366
- :boundingbox=>[47,
367
- -22,
368
- 553,
369
- 582]},
370
- "T"=>{:charcode=>84,
371
- :wx=>600,
372
- :name=>"T",
373
- :boundingbox=>[21,
374
- 0,
375
- 579,
376
- 562]},
377
- "U"=>{:charcode=>85,
378
- :wx=>600,
379
- :name=>"U",
380
- :boundingbox=>[4,
381
- -18,
382
- 596,
383
- 562]},
384
- "V"=>{:charcode=>86,
385
- :wx=>600,
386
- :name=>"V",
387
- :boundingbox=>[-13,
388
- 0,
389
- 613,
390
- 562]},
391
- "W"=>{:charcode=>87,
392
- :wx=>600,
393
- :name=>"W",
394
- :boundingbox=>[-18,
395
- 0,
396
- 618,
397
- 562]},
398
- "X"=>{:charcode=>88,
399
- :wx=>600,
400
- :name=>"X",
401
- :boundingbox=>[12,
402
- 0,
403
- 588,
404
- 562]},
405
- "Y"=>{:charcode=>89,
406
- :wx=>600,
407
- :name=>"Y",
408
- :boundingbox=>[12,
409
- 0,
410
- 589,
411
- 562]},
412
- "Z"=>{:charcode=>90,
413
- :wx=>600,
414
- :name=>"Z",
415
- :boundingbox=>[62,
416
- 0,
417
- 539,
418
- 562]},
419
- "bracketleft"=>{:charcode=>91,
420
- :wx=>600,
421
- :name=>"bracketleft",
422
- :boundingbox=>[245,
423
- -102,
424
- 475,
425
- 616]},
426
- "backslash"=>{:charcode=>92,
427
- :wx=>600,
428
- :name=>"backslash",
429
- :boundingbox=>[99,
430
- -77,
431
- 503,
432
- 626]},
433
- "bracketright"=>{:charcode=>93,
434
- :wx=>600,
435
- :name=>"bracketright",
436
- :boundingbox=>[125,
437
- -102,
438
- 355,
439
- 616]},
440
- "asciicircum"=>{:charcode=>94,
441
- :wx=>600,
442
- :name=>"asciicircum",
443
- :boundingbox=>[108,
444
- 250,
445
- 492,
446
- 616]},
447
- "underscore"=>{:charcode=>95,
448
- :wx=>600,
449
- :name=>"underscore",
450
- :boundingbox=>[0,
451
- -125,
452
- 600,
453
- -75]},
454
- "quoteleft"=>{:charcode=>96,
455
- :wx=>600,
456
- :name=>"quoteleft",
457
- :boundingbox=>[178,
458
- 277,
459
- 428,
460
- 562]},
461
- "a"=>{:charcode=>97,
462
- :wx=>600,
463
- :name=>"a",
464
- :boundingbox=>[35,
465
- -15,
466
- 570,
467
- 454]},
468
- "b"=>{:charcode=>98,
469
- :wx=>600,
470
- :name=>"b",
471
- :boundingbox=>[0,
472
- -15,
473
- 584,
474
- 626]},
475
- "c"=>{:charcode=>99,
476
- :wx=>600,
477
- :name=>"c",
478
- :boundingbox=>[40,
479
- -15,
480
- 545,
481
- 459]},
482
- "d"=>{:charcode=>100,
483
- :wx=>600,
484
- :name=>"d",
485
- :boundingbox=>[20,
486
- -15,
487
- 591,
488
- 626]},
489
- "e"=>{:charcode=>101,
490
- :wx=>600,
491
- :name=>"e",
492
- :boundingbox=>[40,
493
- -15,
494
- 563,
495
- 454]},
496
- "f"=>{:charcode=>102,
497
- :wx=>600,
498
- :name=>"f",
499
- :boundingbox=>[83,
500
- 0,
501
- 547,
502
- 626]},
503
- "g"=>{:charcode=>103,
504
- :wx=>600,
505
- :name=>"g",
506
- :boundingbox=>[30,
507
- -146,
508
- 580,
509
- 454]},
510
- "h"=>{:charcode=>104,
511
- :wx=>600,
512
- :name=>"h",
513
- :boundingbox=>[5,
514
- 0,
515
- 592,
516
- 626]},
517
- "i"=>{:charcode=>105,
518
- :wx=>600,
519
- :name=>"i",
520
- :boundingbox=>[77,
521
- 0,
522
- 523,
523
- 658]},
524
- "j"=>{:charcode=>106,
525
- :wx=>600,
526
- :name=>"j",
527
- :boundingbox=>[63,
528
- -146,
529
- 440,
530
- 658]},
531
- "k"=>{:charcode=>107,
532
- :wx=>600,
533
- :name=>"k",
534
- :boundingbox=>[20,
535
- 0,
536
- 585,
537
- 626]},
538
- "l"=>{:charcode=>108,
539
- :wx=>600,
540
- :name=>"l",
541
- :boundingbox=>[77,
542
- 0,
543
- 523,
544
- 626]},
545
- "m"=>{:charcode=>109,
546
- :wx=>600,
547
- :name=>"m",
548
- :boundingbox=>[-22,
549
- 0,
550
- 626,
551
- 454]},
552
- "n"=>{:charcode=>110,
553
- :wx=>600,
554
- :name=>"n",
555
- :boundingbox=>[18,
556
- 0,
557
- 592,
558
- 454]},
559
- "o"=>{:charcode=>111,
560
- :wx=>600,
561
- :name=>"o",
562
- :boundingbox=>[30,
563
- -15,
564
- 570,
565
- 454]},
566
- "p"=>{:charcode=>112,
567
- :wx=>600,
568
- :name=>"p",
569
- :boundingbox=>[-1,
570
- -142,
571
- 570,
572
- 454]},
573
- "q"=>{:charcode=>113,
574
- :wx=>600,
575
- :name=>"q",
576
- :boundingbox=>[20,
577
- -142,
578
- 591,
579
- 454]},
580
- "r"=>{:charcode=>114,
581
- :wx=>600,
582
- :name=>"r",
583
- :boundingbox=>[47,
584
- 0,
585
- 580,
586
- 454]},
587
- "s"=>{:charcode=>115,
588
- :wx=>600,
589
- :name=>"s",
590
- :boundingbox=>[68,
591
- -17,
592
- 535,
593
- 459]},
594
- "t"=>{:charcode=>116,
595
- :wx=>600,
596
- :name=>"t",
597
- :boundingbox=>[47,
598
- -15,
599
- 532,
600
- 562]},
601
- "u"=>{:charcode=>117,
602
- :wx=>600,
603
- :name=>"u",
604
- :boundingbox=>[-1,
605
- -15,
606
- 569,
607
- 439]},
608
- "v"=>{:charcode=>118,
609
- :wx=>600,
610
- :name=>"v",
611
- :boundingbox=>[-1,
612
- 0,
613
- 601,
614
- 439]},
615
- "w"=>{:charcode=>119,
616
- :wx=>600,
617
- :name=>"w",
618
- :boundingbox=>[-18,
619
- 0,
620
- 618,
621
- 439]},
622
- "x"=>{:charcode=>120,
623
- :wx=>600,
624
- :name=>"x",
625
- :boundingbox=>[6,
626
- 0,
627
- 594,
628
- 439]},
629
- "y"=>{:charcode=>121,
630
- :wx=>600,
631
- :name=>"y",
632
- :boundingbox=>[-4,
633
- -142,
634
- 601,
635
- 439]},
636
- "z"=>{:charcode=>122,
637
- :wx=>600,
638
- :name=>"z",
639
- :boundingbox=>[81,
640
- 0,
641
- 520,
642
- 439]},
643
- "braceleft"=>{:charcode=>123,
644
- :wx=>600,
645
- :name=>"braceleft",
646
- :boundingbox=>[160,
647
- -102,
648
- 464,
649
- 616]},
650
- "bar"=>{:charcode=>124,
651
- :wx=>600,
652
- :name=>"bar",
653
- :boundingbox=>[255,
654
- -250,
655
- 345,
656
- 750]},
657
- "braceright"=>{:charcode=>125,
658
- :wx=>600,
659
- :name=>"braceright",
660
- :boundingbox=>[136,
661
- -102,
662
- 440,
663
- 616]},
664
- "asciitilde"=>{:charcode=>126,
665
- :wx=>600,
666
- :name=>"asciitilde",
667
- :boundingbox=>[71,
668
- 153,
669
- 530,
670
- 356]},
671
- "exclamdown"=>{:charcode=>161,
672
- :wx=>600,
673
- :name=>"exclamdown",
674
- :boundingbox=>[202,
675
- -146,
676
- 398,
677
- 449]},
678
- "cent"=>{:charcode=>162,
679
- :wx=>600,
680
- :name=>"cent",
681
- :boundingbox=>[66,
682
- -49,
683
- 518,
684
- 614]},
685
- "sterling"=>{:charcode=>163,
686
- :wx=>600,
687
- :name=>"sterling",
688
- :boundingbox=>[72,
689
- -28,
690
- 558,
691
- 611]},
692
- "fraction"=>{:charcode=>164,
693
- :wx=>600,
694
- :name=>"fraction",
695
- :boundingbox=>[25,
696
- -60,
697
- 576,
698
- 661]},
699
- "yen"=>{:charcode=>165,
700
- :wx=>600,
701
- :name=>"yen",
702
- :boundingbox=>[10,
703
- 0,
704
- 590,
705
- 562]},
706
- "florin"=>{:charcode=>166,
707
- :wx=>600,
708
- :name=>"florin",
709
- :boundingbox=>[-30,
710
- -131,
711
- 572,
712
- 616]},
713
- "section"=>{:charcode=>167,
714
- :wx=>600,
715
- :name=>"section",
716
- :boundingbox=>[83,
717
- -70,
718
- 517,
719
- 580]},
720
- "currency"=>{:charcode=>168,
721
- :wx=>600,
722
- :name=>"currency",
723
- :boundingbox=>[54,
724
- 49,
725
- 546,
726
- 517]},
727
- "quotesingle"=>{:charcode=>169,
728
- :wx=>600,
729
- :name=>"quotesingle",
730
- :boundingbox=>[227,
731
- 277,
732
- 373,
733
- 562]},
734
- "quotedblleft"=>{:charcode=>170,
735
- :wx=>600,
736
- :name=>"quotedblleft",
737
- :boundingbox=>[71,
738
- 277,
739
- 535,
740
- 562]},
741
- "guillemotleft"=>{:charcode=>171,
742
- :wx=>600,
743
- :name=>"guillemotleft",
744
- :boundingbox=>[8,
745
- 70,
746
- 553,
747
- 446]},
748
- "guilsinglleft"=>{:charcode=>172,
749
- :wx=>600,
750
- :name=>"guilsinglleft",
751
- :boundingbox=>[141,
752
- 70,
753
- 459,
754
- 446]},
755
- "guilsinglright"=>{:charcode=>173,
756
- :wx=>600,
757
- :name=>"guilsinglright",
758
- :boundingbox=>[141,
759
- 70,
760
- 459,
761
- 446]},
762
- "fi"=>{:charcode=>174,
763
- :wx=>600,
764
- :name=>"fi",
765
- :boundingbox=>[12,
766
- 0,
767
- 593,
768
- 626]},
769
- "fl"=>{:charcode=>175,
770
- :wx=>600,
771
- :name=>"fl",
772
- :boundingbox=>[12,
773
- 0,
774
- 593,
775
- 626]},
776
- "endash"=>{:charcode=>177,
777
- :wx=>600,
778
- :name=>"endash",
779
- :boundingbox=>[65,
780
- 203,
781
- 535,
782
- 313]},
783
- "dagger"=>{:charcode=>178,
784
- :wx=>600,
785
- :name=>"dagger",
786
- :boundingbox=>[106,
787
- -70,
788
- 494,
789
- 580]},
790
- "daggerdbl"=>{:charcode=>179,
791
- :wx=>600,
792
- :name=>"daggerdbl",
793
- :boundingbox=>[106,
794
- -70,
795
- 494,
796
- 580]},
797
- "periodcentered"=>{:charcode=>180,
798
- :wx=>600,
799
- :name=>"periodcentered",
800
- :boundingbox=>[196,
801
- 165,
802
- 404,
803
- 351]},
804
- "paragraph"=>{:charcode=>182,
805
- :wx=>600,
806
- :name=>"paragraph",
807
- :boundingbox=>[6,
808
- -70,
809
- 576,
810
- 580]},
811
- "bullet"=>{:charcode=>183,
812
- :wx=>600,
813
- :name=>"bullet",
814
- :boundingbox=>[140,
815
- 132,
816
- 460,
817
- 430]},
818
- "quotesinglbase"=>{:charcode=>184,
819
- :wx=>600,
820
- :name=>"quotesinglbase",
821
- :boundingbox=>[175,
822
- -142,
823
- 427,
824
- 143]},
825
- "quotedblbase"=>{:charcode=>185,
826
- :wx=>600,
827
- :name=>"quotedblbase",
828
- :boundingbox=>[65,
829
- -142,
830
- 529,
831
- 143]},
832
- "quotedblright"=>{:charcode=>186,
833
- :wx=>600,
834
- :name=>"quotedblright",
835
- :boundingbox=>[61,
836
- 277,
837
- 525,
838
- 562]},
839
- "guillemotright"=>{:charcode=>187,
840
- :wx=>600,
841
- :name=>"guillemotright",
842
- :boundingbox=>[47,
843
- 70,
844
- 592,
845
- 446]},
846
- "ellipsis"=>{:charcode=>188,
847
- :wx=>600,
848
- :name=>"ellipsis",
849
- :boundingbox=>[26,
850
- -15,
851
- 574,
852
- 116]},
853
- "perthousand"=>{:charcode=>189,
854
- :wx=>600,
855
- :name=>"perthousand",
856
- :boundingbox=>[-113,
857
- -15,
858
- 713,
859
- 616]},
860
- "questiondown"=>{:charcode=>191,
861
- :wx=>600,
862
- :name=>"questiondown",
863
- :boundingbox=>[99,
864
- -146,
865
- 502,
866
- 449]},
867
- "grave"=>{:charcode=>193,
868
- :wx=>600,
869
- :name=>"grave",
870
- :boundingbox=>[132,
871
- 508,
872
- 395,
873
- 661]},
874
- "acute"=>{:charcode=>194,
875
- :wx=>600,
876
- :name=>"acute",
877
- :boundingbox=>[205,
878
- 508,
879
- 468,
880
- 661]},
881
- "circumflex"=>{:charcode=>195,
882
- :wx=>600,
883
- :name=>"circumflex",
884
- :boundingbox=>[103,
885
- 483,
886
- 497,
887
- 657]},
888
- "tilde"=>{:charcode=>196,
889
- :wx=>600,
890
- :name=>"tilde",
891
- :boundingbox=>[89,
892
- 493,
893
- 512,
894
- 636]},
895
- "macron"=>{:charcode=>197,
896
- :wx=>600,
897
- :name=>"macron",
898
- :boundingbox=>[88,
899
- 505,
900
- 512,
901
- 585]},
902
- "breve"=>{:charcode=>198,
903
- :wx=>600,
904
- :name=>"breve",
905
- :boundingbox=>[83,
906
- 468,
907
- 517,
908
- 631]},
909
- "dotaccent"=>{:charcode=>199,
910
- :wx=>600,
911
- :name=>"dotaccent",
912
- :boundingbox=>[230,
913
- 498,
914
- 370,
915
- 638]},
916
- "dieresis"=>{:charcode=>200,
917
- :wx=>600,
918
- :name=>"dieresis",
919
- :boundingbox=>[128,
920
- 498,
921
- 472,
922
- 638]},
923
- "ring"=>{:charcode=>202,
924
- :wx=>600,
925
- :name=>"ring",
926
- :boundingbox=>[198,
927
- 481,
928
- 402,
929
- 678]},
930
- "cedilla"=>{:charcode=>203,
931
- :wx=>600,
932
- :name=>"cedilla",
933
- :boundingbox=>[205,
934
- -206,
935
- 387,
936
- 0]},
937
- "hungarumlaut"=>{:charcode=>205,
938
- :wx=>600,
939
- :name=>"hungarumlaut",
940
- :boundingbox=>[68,
941
- 488,
942
- 588,
943
- 661]},
944
- "ogonek"=>{:charcode=>206,
945
- :wx=>600,
946
- :name=>"ogonek",
947
- :boundingbox=>[169,
948
- -199,
949
- 400,
950
- 0]},
951
- "caron"=>{:charcode=>207,
952
- :wx=>600,
953
- :name=>"caron",
954
- :boundingbox=>[103,
955
- 493,
956
- 497,
957
- 667]},
958
- "emdash"=>{:charcode=>208,
959
- :wx=>600,
960
- :name=>"emdash",
961
- :boundingbox=>[-10,
962
- 203,
963
- 610,
964
- 313]},
965
- "AE"=>{:charcode=>225,
966
- :wx=>600,
967
- :name=>"AE",
968
- :boundingbox=>[-29,
969
- 0,
970
- 602,
971
- 562]},
972
- "ordfeminine"=>{:charcode=>227,
973
- :wx=>600,
974
- :name=>"ordfeminine",
975
- :boundingbox=>[147,
976
- 196,
977
- 453,
978
- 580]},
979
- "Lslash"=>{:charcode=>232,
980
- :wx=>600,
981
- :name=>"Lslash",
982
- :boundingbox=>[39,
983
- 0,
984
- 578,
985
- 562]},
986
- "Oslash"=>{:charcode=>233,
987
- :wx=>600,
988
- :name=>"Oslash",
989
- :boundingbox=>[22,
990
- -22,
991
- 578,
992
- 584]},
993
- "OE"=>{:charcode=>234,
994
- :wx=>600,
995
- :name=>"OE",
996
- :boundingbox=>[-25,
997
- 0,
998
- 595,
999
- 562]},
1000
- "ordmasculine"=>{:charcode=>235,
1001
- :wx=>600,
1002
- :name=>"ordmasculine",
1003
- :boundingbox=>[147,
1004
- 196,
1005
- 453,
1006
- 580]},
1007
- "ae"=>{:charcode=>241,
1008
- :wx=>600,
1009
- :name=>"ae",
1010
- :boundingbox=>[-4,
1011
- -15,
1012
- 601,
1013
- 454]},
1014
- "dotlessi"=>{:charcode=>245,
1015
- :wx=>600,
1016
- :name=>"dotlessi",
1017
- :boundingbox=>[77,
1018
- 0,
1019
- 523,
1020
- 439]},
1021
- "lslash"=>{:charcode=>248,
1022
- :wx=>600,
1023
- :name=>"lslash",
1024
- :boundingbox=>[77,
1025
- 0,
1026
- 523,
1027
- 626]},
1028
- "oslash"=>{:charcode=>249,
1029
- :wx=>600,
1030
- :name=>"oslash",
1031
- :boundingbox=>[30,
1032
- -24,
1033
- 570,
1034
- 463]},
1035
- "oe"=>{:charcode=>250,
1036
- :wx=>600,
1037
- :name=>"oe",
1038
- :boundingbox=>[-18,
1039
- -15,
1040
- 611,
1041
- 454]},
1042
- "germandbls"=>{:charcode=>251,
1043
- :wx=>600,
1044
- :name=>"germandbls",
1045
- :boundingbox=>[22,
1046
- -15,
1047
- 596,
1048
- 626]},
1049
- "Idieresis"=>{:charcode=>-1,
1050
- :wx=>600,
1051
- :name=>"Idieresis",
1052
- :boundingbox=>[77,
1053
- 0,
1054
- 523,
1055
- 761]},
1056
- "eacute"=>{:charcode=>-1,
1057
- :wx=>600,
1058
- :name=>"eacute",
1059
- :boundingbox=>[40,
1060
- -15,
1061
- 563,
1062
- 661]},
1063
- "abreve"=>{:charcode=>-1,
1064
- :wx=>600,
1065
- :name=>"abreve",
1066
- :boundingbox=>[35,
1067
- -15,
1068
- 570,
1069
- 661]},
1070
- "uhungarumlaut"=>{:charcode=>-1,
1071
- :wx=>600,
1072
- :name=>"uhungarumlaut",
1073
- :boundingbox=>[-1,
1074
- -15,
1075
- 628,
1076
- 661]},
1077
- "ecaron"=>{:charcode=>-1,
1078
- :wx=>600,
1079
- :name=>"ecaron",
1080
- :boundingbox=>[40,
1081
- -15,
1082
- 563,
1083
- 667]},
1084
- "Ydieresis"=>{:charcode=>-1,
1085
- :wx=>600,
1086
- :name=>"Ydieresis",
1087
- :boundingbox=>[12,
1088
- 0,
1089
- 589,
1090
- 761]},
1091
- "divide"=>{:charcode=>-1,
1092
- :wx=>600,
1093
- :name=>"divide",
1094
- :boundingbox=>[71,
1095
- 16,
1096
- 529,
1097
- 500]},
1098
- "Yacute"=>{:charcode=>-1,
1099
- :wx=>600,
1100
- :name=>"Yacute",
1101
- :boundingbox=>[12,
1102
- 0,
1103
- 589,
1104
- 784]},
1105
- "Acircumflex"=>{:charcode=>-1,
1106
- :wx=>600,
1107
- :name=>"Acircumflex",
1108
- :boundingbox=>[-9,
1109
- 0,
1110
- 609,
1111
- 780]},
1112
- "aacute"=>{:charcode=>-1,
1113
- :wx=>600,
1114
- :name=>"aacute",
1115
- :boundingbox=>[35,
1116
- -15,
1117
- 570,
1118
- 661]},
1119
- "Ucircumflex"=>{:charcode=>-1,
1120
- :wx=>600,
1121
- :name=>"Ucircumflex",
1122
- :boundingbox=>[4,
1123
- -18,
1124
- 596,
1125
- 780]},
1126
- "yacute"=>{:charcode=>-1,
1127
- :wx=>600,
1128
- :name=>"yacute",
1129
- :boundingbox=>[-4,
1130
- -142,
1131
- 601,
1132
- 661]},
1133
- "scommaaccent"=>{:charcode=>-1,
1134
- :wx=>600,
1135
- :name=>"scommaaccent",
1136
- :boundingbox=>[68,
1137
- -250,
1138
- 535,
1139
- 459]},
1140
- "ecircumflex"=>{:charcode=>-1,
1141
- :wx=>600,
1142
- :name=>"ecircumflex",
1143
- :boundingbox=>[40,
1144
- -15,
1145
- 563,
1146
- 657]},
1147
- "Uring"=>{:charcode=>-1,
1148
- :wx=>600,
1149
- :name=>"Uring",
1150
- :boundingbox=>[4,
1151
- -18,
1152
- 596,
1153
- 801]},
1154
- "Udieresis"=>{:charcode=>-1,
1155
- :wx=>600,
1156
- :name=>"Udieresis",
1157
- :boundingbox=>[4,
1158
- -18,
1159
- 596,
1160
- 761]},
1161
- "aogonek"=>{:charcode=>-1,
1162
- :wx=>600,
1163
- :name=>"aogonek",
1164
- :boundingbox=>[35,
1165
- -199,
1166
- 586,
1167
- 454]},
1168
- "Uacute"=>{:charcode=>-1,
1169
- :wx=>600,
1170
- :name=>"Uacute",
1171
- :boundingbox=>[4,
1172
- -18,
1173
- 596,
1174
- 784]},
1175
- "uogonek"=>{:charcode=>-1,
1176
- :wx=>600,
1177
- :name=>"uogonek",
1178
- :boundingbox=>[-1,
1179
- -199,
1180
- 585,
1181
- 439]},
1182
- "Edieresis"=>{:charcode=>-1,
1183
- :wx=>600,
1184
- :name=>"Edieresis",
1185
- :boundingbox=>[25,
1186
- 0,
1187
- 560,
1188
- 761]},
1189
- "Dcroat"=>{:charcode=>-1,
1190
- :wx=>600,
1191
- :name=>"Dcroat",
1192
- :boundingbox=>[30,
1193
- 0,
1194
- 594,
1195
- 562]},
1196
- "commaaccent"=>{:charcode=>-1,
1197
- :wx=>600,
1198
- :name=>"commaaccent",
1199
- :boundingbox=>[205,
1200
- -250,
1201
- 397,
1202
- -57]},
1203
- "copyright"=>{:charcode=>-1,
1204
- :wx=>600,
1205
- :name=>"copyright",
1206
- :boundingbox=>[0,
1207
- -18,
1208
- 600,
1209
- 580]},
1210
- "Emacron"=>{:charcode=>-1,
1211
- :wx=>600,
1212
- :name=>"Emacron",
1213
- :boundingbox=>[25,
1214
- 0,
1215
- 560,
1216
- 708]},
1217
- "ccaron"=>{:charcode=>-1,
1218
- :wx=>600,
1219
- :name=>"ccaron",
1220
- :boundingbox=>[40,
1221
- -15,
1222
- 545,
1223
- 667]},
1224
- "aring"=>{:charcode=>-1,
1225
- :wx=>600,
1226
- :name=>"aring",
1227
- :boundingbox=>[35,
1228
- -15,
1229
- 570,
1230
- 678]},
1231
- "Ncommaaccent"=>{:charcode=>-1,
1232
- :wx=>600,
1233
- :name=>"Ncommaaccent",
1234
- :boundingbox=>[8,
1235
- -250,
1236
- 610,
1237
- 562]},
1238
- "lacute"=>{:charcode=>-1,
1239
- :wx=>600,
1240
- :name=>"lacute",
1241
- :boundingbox=>[77,
1242
- 0,
1243
- 523,
1244
- 801]},
1245
- "agrave"=>{:charcode=>-1,
1246
- :wx=>600,
1247
- :name=>"agrave",
1248
- :boundingbox=>[35,
1249
- -15,
1250
- 570,
1251
- 661]},
1252
- "Tcommaaccent"=>{:charcode=>-1,
1253
- :wx=>600,
1254
- :name=>"Tcommaaccent",
1255
- :boundingbox=>[21,
1256
- -250,
1257
- 579,
1258
- 562]},
1259
- "Cacute"=>{:charcode=>-1,
1260
- :wx=>600,
1261
- :name=>"Cacute",
1262
- :boundingbox=>[22,
1263
- -18,
1264
- 560,
1265
- 784]},
1266
- "atilde"=>{:charcode=>-1,
1267
- :wx=>600,
1268
- :name=>"atilde",
1269
- :boundingbox=>[35,
1270
- -15,
1271
- 570,
1272
- 636]},
1273
- "Edotaccent"=>{:charcode=>-1,
1274
- :wx=>600,
1275
- :name=>"Edotaccent",
1276
- :boundingbox=>[25,
1277
- 0,
1278
- 560,
1279
- 761]},
1280
- "scaron"=>{:charcode=>-1,
1281
- :wx=>600,
1282
- :name=>"scaron",
1283
- :boundingbox=>[68,
1284
- -17,
1285
- 535,
1286
- 667]},
1287
- "scedilla"=>{:charcode=>-1,
1288
- :wx=>600,
1289
- :name=>"scedilla",
1290
- :boundingbox=>[68,
1291
- -206,
1292
- 535,
1293
- 459]},
1294
- "iacute"=>{:charcode=>-1,
1295
- :wx=>600,
1296
- :name=>"iacute",
1297
- :boundingbox=>[77,
1298
- 0,
1299
- 523,
1300
- 661]},
1301
- "lozenge"=>{:charcode=>-1,
1302
- :wx=>600,
1303
- :name=>"lozenge",
1304
- :boundingbox=>[66,
1305
- 0,
1306
- 534,
1307
- 740]},
1308
- "Rcaron"=>{:charcode=>-1,
1309
- :wx=>600,
1310
- :name=>"Rcaron",
1311
- :boundingbox=>[24,
1312
- 0,
1313
- 599,
1314
- 790]},
1315
- "Gcommaaccent"=>{:charcode=>-1,
1316
- :wx=>600,
1317
- :name=>"Gcommaaccent",
1318
- :boundingbox=>[22,
1319
- -250,
1320
- 594,
1321
- 580]},
1322
- "ucircumflex"=>{:charcode=>-1,
1323
- :wx=>600,
1324
- :name=>"ucircumflex",
1325
- :boundingbox=>[-1,
1326
- -15,
1327
- 569,
1328
- 657]},
1329
- "acircumflex"=>{:charcode=>-1,
1330
- :wx=>600,
1331
- :name=>"acircumflex",
1332
- :boundingbox=>[35,
1333
- -15,
1334
- 570,
1335
- 657]},
1336
- "Amacron"=>{:charcode=>-1,
1337
- :wx=>600,
1338
- :name=>"Amacron",
1339
- :boundingbox=>[-9,
1340
- 0,
1341
- 609,
1342
- 708]},
1343
- "rcaron"=>{:charcode=>-1,
1344
- :wx=>600,
1345
- :name=>"rcaron",
1346
- :boundingbox=>[47,
1347
- 0,
1348
- 580,
1349
- 667]},
1350
- "ccedilla"=>{:charcode=>-1,
1351
- :wx=>600,
1352
- :name=>"ccedilla",
1353
- :boundingbox=>[40,
1354
- -206,
1355
- 545,
1356
- 459]},
1357
- "Zdotaccent"=>{:charcode=>-1,
1358
- :wx=>600,
1359
- :name=>"Zdotaccent",
1360
- :boundingbox=>[62,
1361
- 0,
1362
- 539,
1363
- 761]},
1364
- "Thorn"=>{:charcode=>-1,
1365
- :wx=>600,
1366
- :name=>"Thorn",
1367
- :boundingbox=>[48,
1368
- 0,
1369
- 557,
1370
- 562]},
1371
- "Omacron"=>{:charcode=>-1,
1372
- :wx=>600,
1373
- :name=>"Omacron",
1374
- :boundingbox=>[22,
1375
- -18,
1376
- 578,
1377
- 708]},
1378
- "Racute"=>{:charcode=>-1,
1379
- :wx=>600,
1380
- :name=>"Racute",
1381
- :boundingbox=>[24,
1382
- 0,
1383
- 599,
1384
- 784]},
1385
- "Sacute"=>{:charcode=>-1,
1386
- :wx=>600,
1387
- :name=>"Sacute",
1388
- :boundingbox=>[47,
1389
- -22,
1390
- 553,
1391
- 784]},
1392
- "dcaron"=>{:charcode=>-1,
1393
- :wx=>600,
1394
- :name=>"dcaron",
1395
- :boundingbox=>[20,
1396
- -15,
1397
- 727,
1398
- 626]},
1399
- "Umacron"=>{:charcode=>-1,
1400
- :wx=>600,
1401
- :name=>"Umacron",
1402
- :boundingbox=>[4,
1403
- -18,
1404
- 596,
1405
- 708]},
1406
- "uring"=>{:charcode=>-1,
1407
- :wx=>600,
1408
- :name=>"uring",
1409
- :boundingbox=>[-1,
1410
- -15,
1411
- 569,
1412
- 678]},
1413
- "threesuperior"=>{:charcode=>-1,
1414
- :wx=>600,
1415
- :name=>"threesuperior",
1416
- :boundingbox=>[138,
1417
- 222,
1418
- 433,
1419
- 616]},
1420
- "Ograve"=>{:charcode=>-1,
1421
- :wx=>600,
1422
- :name=>"Ograve",
1423
- :boundingbox=>[22,
1424
- -18,
1425
- 578,
1426
- 784]},
1427
- "Agrave"=>{:charcode=>-1,
1428
- :wx=>600,
1429
- :name=>"Agrave",
1430
- :boundingbox=>[-9,
1431
- 0,
1432
- 609,
1433
- 784]},
1434
- "Abreve"=>{:charcode=>-1,
1435
- :wx=>600,
1436
- :name=>"Abreve",
1437
- :boundingbox=>[-9,
1438
- 0,
1439
- 609,
1440
- 784]},
1441
- "multiply"=>{:charcode=>-1,
1442
- :wx=>600,
1443
- :name=>"multiply",
1444
- :boundingbox=>[81,
1445
- 39,
1446
- 520,
1447
- 478]},
1448
- "uacute"=>{:charcode=>-1,
1449
- :wx=>600,
1450
- :name=>"uacute",
1451
- :boundingbox=>[-1,
1452
- -15,
1453
- 569,
1454
- 661]},
1455
- "Tcaron"=>{:charcode=>-1,
1456
- :wx=>600,
1457
- :name=>"Tcaron",
1458
- :boundingbox=>[21,
1459
- 0,
1460
- 579,
1461
- 790]},
1462
- "partialdiff"=>{:charcode=>-1,
1463
- :wx=>600,
1464
- :name=>"partialdiff",
1465
- :boundingbox=>[63,
1466
- -38,
1467
- 537,
1468
- 728]},
1469
- "ydieresis"=>{:charcode=>-1,
1470
- :wx=>600,
1471
- :name=>"ydieresis",
1472
- :boundingbox=>[-4,
1473
- -142,
1474
- 601,
1475
- 638]},
1476
- "Nacute"=>{:charcode=>-1,
1477
- :wx=>600,
1478
- :name=>"Nacute",
1479
- :boundingbox=>[8,
1480
- -12,
1481
- 610,
1482
- 784]},
1483
- "icircumflex"=>{:charcode=>-1,
1484
- :wx=>600,
1485
- :name=>"icircumflex",
1486
- :boundingbox=>[73,
1487
- 0,
1488
- 523,
1489
- 657]},
1490
- "Ecircumflex"=>{:charcode=>-1,
1491
- :wx=>600,
1492
- :name=>"Ecircumflex",
1493
- :boundingbox=>[25,
1494
- 0,
1495
- 560,
1496
- 780]},
1497
- "adieresis"=>{:charcode=>-1,
1498
- :wx=>600,
1499
- :name=>"adieresis",
1500
- :boundingbox=>[35,
1501
- -15,
1502
- 570,
1503
- 638]},
1504
- "edieresis"=>{:charcode=>-1,
1505
- :wx=>600,
1506
- :name=>"edieresis",
1507
- :boundingbox=>[40,
1508
- -15,
1509
- 563,
1510
- 638]},
1511
- "cacute"=>{:charcode=>-1,
1512
- :wx=>600,
1513
- :name=>"cacute",
1514
- :boundingbox=>[40,
1515
- -15,
1516
- 545,
1517
- 661]},
1518
- "nacute"=>{:charcode=>-1,
1519
- :wx=>600,
1520
- :name=>"nacute",
1521
- :boundingbox=>[18,
1522
- 0,
1523
- 592,
1524
- 661]},
1525
- "umacron"=>{:charcode=>-1,
1526
- :wx=>600,
1527
- :name=>"umacron",
1528
- :boundingbox=>[-1,
1529
- -15,
1530
- 569,
1531
- 585]},
1532
- "Ncaron"=>{:charcode=>-1,
1533
- :wx=>600,
1534
- :name=>"Ncaron",
1535
- :boundingbox=>[8,
1536
- -12,
1537
- 610,
1538
- 790]},
1539
- "Iacute"=>{:charcode=>-1,
1540
- :wx=>600,
1541
- :name=>"Iacute",
1542
- :boundingbox=>[77,
1543
- 0,
1544
- 523,
1545
- 784]},
1546
- "plusminus"=>{:charcode=>-1,
1547
- :wx=>600,
1548
- :name=>"plusminus",
1549
- :boundingbox=>[71,
1550
- 24,
1551
- 529,
1552
- 515]},
1553
- "brokenbar"=>{:charcode=>-1,
1554
- :wx=>600,
1555
- :name=>"brokenbar",
1556
- :boundingbox=>[255,
1557
- -175,
1558
- 345,
1559
- 675]},
1560
- "registered"=>{:charcode=>-1,
1561
- :wx=>600,
1562
- :name=>"registered",
1563
- :boundingbox=>[0,
1564
- -18,
1565
- 600,
1566
- 580]},
1567
- "Gbreve"=>{:charcode=>-1,
1568
- :wx=>600,
1569
- :name=>"Gbreve",
1570
- :boundingbox=>[22,
1571
- -18,
1572
- 594,
1573
- 784]},
1574
- "Idotaccent"=>{:charcode=>-1,
1575
- :wx=>600,
1576
- :name=>"Idotaccent",
1577
- :boundingbox=>[77,
1578
- 0,
1579
- 523,
1580
- 761]},
1581
- "summation"=>{:charcode=>-1,
1582
- :wx=>600,
1583
- :name=>"summation",
1584
- :boundingbox=>[15,
1585
- -10,
1586
- 586,
1587
- 706]},
1588
- "Egrave"=>{:charcode=>-1,
1589
- :wx=>600,
1590
- :name=>"Egrave",
1591
- :boundingbox=>[25,
1592
- 0,
1593
- 560,
1594
- 784]},
1595
- "racute"=>{:charcode=>-1,
1596
- :wx=>600,
1597
- :name=>"racute",
1598
- :boundingbox=>[47,
1599
- 0,
1600
- 580,
1601
- 661]},
1602
- "omacron"=>{:charcode=>-1,
1603
- :wx=>600,
1604
- :name=>"omacron",
1605
- :boundingbox=>[30,
1606
- -15,
1607
- 570,
1608
- 585]},
1609
- "Zacute"=>{:charcode=>-1,
1610
- :wx=>600,
1611
- :name=>"Zacute",
1612
- :boundingbox=>[62,
1613
- 0,
1614
- 539,
1615
- 784]},
1616
- "Zcaron"=>{:charcode=>-1,
1617
- :wx=>600,
1618
- :name=>"Zcaron",
1619
- :boundingbox=>[62,
1620
- 0,
1621
- 539,
1622
- 790]},
1623
- "greaterequal"=>{:charcode=>-1,
1624
- :wx=>600,
1625
- :name=>"greaterequal",
1626
- :boundingbox=>[26,
1627
- 0,
1628
- 523,
1629
- 696]},
1630
- "Eth"=>{:charcode=>-1,
1631
- :wx=>600,
1632
- :name=>"Eth",
1633
- :boundingbox=>[30,
1634
- 0,
1635
- 594,
1636
- 562]},
1637
- "Ccedilla"=>{:charcode=>-1,
1638
- :wx=>600,
1639
- :name=>"Ccedilla",
1640
- :boundingbox=>[22,
1641
- -206,
1642
- 560,
1643
- 580]},
1644
- "lcommaaccent"=>{:charcode=>-1,
1645
- :wx=>600,
1646
- :name=>"lcommaaccent",
1647
- :boundingbox=>[77,
1648
- -250,
1649
- 523,
1650
- 626]},
1651
- "tcaron"=>{:charcode=>-1,
1652
- :wx=>600,
1653
- :name=>"tcaron",
1654
- :boundingbox=>[47,
1655
- -15,
1656
- 532,
1657
- 703]},
1658
- "eogonek"=>{:charcode=>-1,
1659
- :wx=>600,
1660
- :name=>"eogonek",
1661
- :boundingbox=>[40,
1662
- -199,
1663
- 563,
1664
- 454]},
1665
- "Uogonek"=>{:charcode=>-1,
1666
- :wx=>600,
1667
- :name=>"Uogonek",
1668
- :boundingbox=>[4,
1669
- -199,
1670
- 596,
1671
- 562]},
1672
- "Aacute"=>{:charcode=>-1,
1673
- :wx=>600,
1674
- :name=>"Aacute",
1675
- :boundingbox=>[-9,
1676
- 0,
1677
- 609,
1678
- 784]},
1679
- "Adieresis"=>{:charcode=>-1,
1680
- :wx=>600,
1681
- :name=>"Adieresis",
1682
- :boundingbox=>[-9,
1683
- 0,
1684
- 609,
1685
- 761]},
1686
- "egrave"=>{:charcode=>-1,
1687
- :wx=>600,
1688
- :name=>"egrave",
1689
- :boundingbox=>[40,
1690
- -15,
1691
- 563,
1692
- 661]},
1693
- "zacute"=>{:charcode=>-1,
1694
- :wx=>600,
1695
- :name=>"zacute",
1696
- :boundingbox=>[81,
1697
- 0,
1698
- 520,
1699
- 661]},
1700
- "iogonek"=>{:charcode=>-1,
1701
- :wx=>600,
1702
- :name=>"iogonek",
1703
- :boundingbox=>[77,
1704
- -199,
1705
- 523,
1706
- 658]},
1707
- "Oacute"=>{:charcode=>-1,
1708
- :wx=>600,
1709
- :name=>"Oacute",
1710
- :boundingbox=>[22,
1711
- -18,
1712
- 578,
1713
- 784]},
1714
- "oacute"=>{:charcode=>-1,
1715
- :wx=>600,
1716
- :name=>"oacute",
1717
- :boundingbox=>[30,
1718
- -15,
1719
- 570,
1720
- 661]},
1721
- "amacron"=>{:charcode=>-1,
1722
- :wx=>600,
1723
- :name=>"amacron",
1724
- :boundingbox=>[35,
1725
- -15,
1726
- 570,
1727
- 585]},
1728
- "sacute"=>{:charcode=>-1,
1729
- :wx=>600,
1730
- :name=>"sacute",
1731
- :boundingbox=>[68,
1732
- -17,
1733
- 535,
1734
- 661]},
1735
- "idieresis"=>{:charcode=>-1,
1736
- :wx=>600,
1737
- :name=>"idieresis",
1738
- :boundingbox=>[77,
1739
- 0,
1740
- 523,
1741
- 618]},
1742
- "Ocircumflex"=>{:charcode=>-1,
1743
- :wx=>600,
1744
- :name=>"Ocircumflex",
1745
- :boundingbox=>[22,
1746
- -18,
1747
- 578,
1748
- 780]},
1749
- "Ugrave"=>{:charcode=>-1,
1750
- :wx=>600,
1751
- :name=>"Ugrave",
1752
- :boundingbox=>[4,
1753
- -18,
1754
- 596,
1755
- 784]},
1756
- "Delta"=>{:charcode=>-1,
1757
- :wx=>600,
1758
- :name=>"Delta",
1759
- :boundingbox=>[6,
1760
- 0,
1761
- 594,
1762
- 688]},
1763
- "thorn"=>{:charcode=>-1,
1764
- :wx=>600,
1765
- :name=>"thorn",
1766
- :boundingbox=>[-14,
1767
- -142,
1768
- 570,
1769
- 626]},
1770
- "twosuperior"=>{:charcode=>-1,
1771
- :wx=>600,
1772
- :name=>"twosuperior",
1773
- :boundingbox=>[143,
1774
- 230,
1775
- 436,
1776
- 616]},
1777
- "Odieresis"=>{:charcode=>-1,
1778
- :wx=>600,
1779
- :name=>"Odieresis",
1780
- :boundingbox=>[22,
1781
- -18,
1782
- 578,
1783
- 761]},
1784
- "mu"=>{:charcode=>-1,
1785
- :wx=>600,
1786
- :name=>"mu",
1787
- :boundingbox=>[-1,
1788
- -142,
1789
- 569,
1790
- 439]},
1791
- "igrave"=>{:charcode=>-1,
1792
- :wx=>600,
1793
- :name=>"igrave",
1794
- :boundingbox=>[77,
1795
- 0,
1796
- 523,
1797
- 661]},
1798
- "ohungarumlaut"=>{:charcode=>-1,
1799
- :wx=>600,
1800
- :name=>"ohungarumlaut",
1801
- :boundingbox=>[30,
1802
- -15,
1803
- 668,
1804
- 661]},
1805
- "Eogonek"=>{:charcode=>-1,
1806
- :wx=>600,
1807
- :name=>"Eogonek",
1808
- :boundingbox=>[25,
1809
- -199,
1810
- 576,
1811
- 562]},
1812
- "dcroat"=>{:charcode=>-1,
1813
- :wx=>600,
1814
- :name=>"dcroat",
1815
- :boundingbox=>[20,
1816
- -15,
1817
- 591,
1818
- 626]},
1819
- "threequarters"=>{:charcode=>-1,
1820
- :wx=>600,
1821
- :name=>"threequarters",
1822
- :boundingbox=>[-47,
1823
- -60,
1824
- 648,
1825
- 661]},
1826
- "Scedilla"=>{:charcode=>-1,
1827
- :wx=>600,
1828
- :name=>"Scedilla",
1829
- :boundingbox=>[47,
1830
- -206,
1831
- 553,
1832
- 582]},
1833
- "lcaron"=>{:charcode=>-1,
1834
- :wx=>600,
1835
- :name=>"lcaron",
1836
- :boundingbox=>[77,
1837
- 0,
1838
- 597,
1839
- 626]},
1840
- "Kcommaaccent"=>{:charcode=>-1,
1841
- :wx=>600,
1842
- :name=>"Kcommaaccent",
1843
- :boundingbox=>[21,
1844
- -250,
1845
- 599,
1846
- 562]},
1847
- "Lacute"=>{:charcode=>-1,
1848
- :wx=>600,
1849
- :name=>"Lacute",
1850
- :boundingbox=>[39,
1851
- 0,
1852
- 578,
1853
- 784]},
1854
- "trademark"=>{:charcode=>-1,
1855
- :wx=>600,
1856
- :name=>"trademark",
1857
- :boundingbox=>[-9,
1858
- 230,
1859
- 749,
1860
- 562]},
1861
- "edotaccent"=>{:charcode=>-1,
1862
- :wx=>600,
1863
- :name=>"edotaccent",
1864
- :boundingbox=>[40,
1865
- -15,
1866
- 563,
1867
- 638]},
1868
- "Igrave"=>{:charcode=>-1,
1869
- :wx=>600,
1870
- :name=>"Igrave",
1871
- :boundingbox=>[77,
1872
- 0,
1873
- 523,
1874
- 784]},
1875
- "Imacron"=>{:charcode=>-1,
1876
- :wx=>600,
1877
- :name=>"Imacron",
1878
- :boundingbox=>[77,
1879
- 0,
1880
- 523,
1881
- 708]},
1882
- "Lcaron"=>{:charcode=>-1,
1883
- :wx=>600,
1884
- :name=>"Lcaron",
1885
- :boundingbox=>[39,
1886
- 0,
1887
- 637,
1888
- 562]},
1889
- "onehalf"=>{:charcode=>-1,
1890
- :wx=>600,
1891
- :name=>"onehalf",
1892
- :boundingbox=>[-47,
1893
- -60,
1894
- 648,
1895
- 661]},
1896
- "lessequal"=>{:charcode=>-1,
1897
- :wx=>600,
1898
- :name=>"lessequal",
1899
- :boundingbox=>[26,
1900
- 0,
1901
- 523,
1902
- 696]},
1903
- "ocircumflex"=>{:charcode=>-1,
1904
- :wx=>600,
1905
- :name=>"ocircumflex",
1906
- :boundingbox=>[30,
1907
- -15,
1908
- 570,
1909
- 657]},
1910
- "ntilde"=>{:charcode=>-1,
1911
- :wx=>600,
1912
- :name=>"ntilde",
1913
- :boundingbox=>[18,
1914
- 0,
1915
- 592,
1916
- 636]},
1917
- "Uhungarumlaut"=>{:charcode=>-1,
1918
- :wx=>600,
1919
- :name=>"Uhungarumlaut",
1920
- :boundingbox=>[4,
1921
- -18,
1922
- 638,
1923
- 784]},
1924
- "Eacute"=>{:charcode=>-1,
1925
- :wx=>600,
1926
- :name=>"Eacute",
1927
- :boundingbox=>[25,
1928
- 0,
1929
- 560,
1930
- 784]},
1931
- "emacron"=>{:charcode=>-1,
1932
- :wx=>600,
1933
- :name=>"emacron",
1934
- :boundingbox=>[40,
1935
- -15,
1936
- 563,
1937
- 585]},
1938
- "gbreve"=>{:charcode=>-1,
1939
- :wx=>600,
1940
- :name=>"gbreve",
1941
- :boundingbox=>[30,
1942
- -146,
1943
- 580,
1944
- 661]},
1945
- "onequarter"=>{:charcode=>-1,
1946
- :wx=>600,
1947
- :name=>"onequarter",
1948
- :boundingbox=>[-56,
1949
- -60,
1950
- 656,
1951
- 661]},
1952
- "Scaron"=>{:charcode=>-1,
1953
- :wx=>600,
1954
- :name=>"Scaron",
1955
- :boundingbox=>[47,
1956
- -22,
1957
- 553,
1958
- 790]},
1959
- "Scommaaccent"=>{:charcode=>-1,
1960
- :wx=>600,
1961
- :name=>"Scommaaccent",
1962
- :boundingbox=>[47,
1963
- -250,
1964
- 553,
1965
- 582]},
1966
- "Ohungarumlaut"=>{:charcode=>-1,
1967
- :wx=>600,
1968
- :name=>"Ohungarumlaut",
1969
- :boundingbox=>[22,
1970
- -18,
1971
- 628,
1972
- 784]},
1973
- "degree"=>{:charcode=>-1,
1974
- :wx=>600,
1975
- :name=>"degree",
1976
- :boundingbox=>[86,
1977
- 243,
1978
- 474,
1979
- 616]},
1980
- "ograve"=>{:charcode=>-1,
1981
- :wx=>600,
1982
- :name=>"ograve",
1983
- :boundingbox=>[30,
1984
- -15,
1985
- 570,
1986
- 661]},
1987
- "Ccaron"=>{:charcode=>-1,
1988
- :wx=>600,
1989
- :name=>"Ccaron",
1990
- :boundingbox=>[22,
1991
- -18,
1992
- 560,
1993
- 790]},
1994
- "ugrave"=>{:charcode=>-1,
1995
- :wx=>600,
1996
- :name=>"ugrave",
1997
- :boundingbox=>[-1,
1998
- -15,
1999
- 569,
2000
- 661]},
2001
- "radical"=>{:charcode=>-1,
2002
- :wx=>600,
2003
- :name=>"radical",
2004
- :boundingbox=>[-19,
2005
- -104,
2006
- 473,
2007
- 778]},
2008
- "Dcaron"=>{:charcode=>-1,
2009
- :wx=>600,
2010
- :name=>"Dcaron",
2011
- :boundingbox=>[30,
2012
- 0,
2013
- 594,
2014
- 790]},
2015
- "rcommaaccent"=>{:charcode=>-1,
2016
- :wx=>600,
2017
- :name=>"rcommaaccent",
2018
- :boundingbox=>[47,
2019
- -250,
2020
- 580,
2021
- 454]},
2022
- "Ntilde"=>{:charcode=>-1,
2023
- :wx=>600,
2024
- :name=>"Ntilde",
2025
- :boundingbox=>[8,
2026
- -12,
2027
- 610,
2028
- 759]},
2029
- "otilde"=>{:charcode=>-1,
2030
- :wx=>600,
2031
- :name=>"otilde",
2032
- :boundingbox=>[30,
2033
- -15,
2034
- 570,
2035
- 636]},
2036
- "Rcommaaccent"=>{:charcode=>-1,
2037
- :wx=>600,
2038
- :name=>"Rcommaaccent",
2039
- :boundingbox=>[24,
2040
- -250,
2041
- 599,
2042
- 562]},
2043
- "Lcommaaccent"=>{:charcode=>-1,
2044
- :wx=>600,
2045
- :name=>"Lcommaaccent",
2046
- :boundingbox=>[39,
2047
- -250,
2048
- 578,
2049
- 562]},
2050
- "Atilde"=>{:charcode=>-1,
2051
- :wx=>600,
2052
- :name=>"Atilde",
2053
- :boundingbox=>[-9,
2054
- 0,
2055
- 609,
2056
- 759]},
2057
- "Aogonek"=>{:charcode=>-1,
2058
- :wx=>600,
2059
- :name=>"Aogonek",
2060
- :boundingbox=>[-9,
2061
- -199,
2062
- 625,
2063
- 562]},
2064
- "Aring"=>{:charcode=>-1,
2065
- :wx=>600,
2066
- :name=>"Aring",
2067
- :boundingbox=>[-9,
2068
- 0,
2069
- 609,
2070
- 801]},
2071
- "Otilde"=>{:charcode=>-1,
2072
- :wx=>600,
2073
- :name=>"Otilde",
2074
- :boundingbox=>[22,
2075
- -18,
2076
- 578,
2077
- 759]},
2078
- "zdotaccent"=>{:charcode=>-1,
2079
- :wx=>600,
2080
- :name=>"zdotaccent",
2081
- :boundingbox=>[81,
2082
- 0,
2083
- 520,
2084
- 638]},
2085
- "Ecaron"=>{:charcode=>-1,
2086
- :wx=>600,
2087
- :name=>"Ecaron",
2088
- :boundingbox=>[25,
2089
- 0,
2090
- 560,
2091
- 790]},
2092
- "Iogonek"=>{:charcode=>-1,
2093
- :wx=>600,
2094
- :name=>"Iogonek",
2095
- :boundingbox=>[77,
2096
- -199,
2097
- 523,
2098
- 562]},
2099
- "kcommaaccent"=>{:charcode=>-1,
2100
- :wx=>600,
2101
- :name=>"kcommaaccent",
2102
- :boundingbox=>[20,
2103
- -250,
2104
- 585,
2105
- 626]},
2106
- "minus"=>{:charcode=>-1,
2107
- :wx=>600,
2108
- :name=>"minus",
2109
- :boundingbox=>[71,
2110
- 203,
2111
- 529,
2112
- 313]},
2113
- "Icircumflex"=>{:charcode=>-1,
2114
- :wx=>600,
2115
- :name=>"Icircumflex",
2116
- :boundingbox=>[77,
2117
- 0,
2118
- 523,
2119
- 780]},
2120
- "ncaron"=>{:charcode=>-1,
2121
- :wx=>600,
2122
- :name=>"ncaron",
2123
- :boundingbox=>[18,
2124
- 0,
2125
- 592,
2126
- 667]},
2127
- "tcommaaccent"=>{:charcode=>-1,
2128
- :wx=>600,
2129
- :name=>"tcommaaccent",
2130
- :boundingbox=>[47,
2131
- -250,
2132
- 532,
2133
- 562]},
2134
- "logicalnot"=>{:charcode=>-1,
2135
- :wx=>600,
2136
- :name=>"logicalnot",
2137
- :boundingbox=>[71,
2138
- 103,
2139
- 529,
2140
- 413]},
2141
- "odieresis"=>{:charcode=>-1,
2142
- :wx=>600,
2143
- :name=>"odieresis",
2144
- :boundingbox=>[30,
2145
- -15,
2146
- 570,
2147
- 638]},
2148
- "udieresis"=>{:charcode=>-1,
2149
- :wx=>600,
2150
- :name=>"udieresis",
2151
- :boundingbox=>[-1,
2152
- -15,
2153
- 569,
2154
- 638]},
2155
- "notequal"=>{:charcode=>-1,
2156
- :wx=>600,
2157
- :name=>"notequal",
2158
- :boundingbox=>[12,
2159
- -47,
2160
- 537,
2161
- 563]},
2162
- "gcommaaccent"=>{:charcode=>-1,
2163
- :wx=>600,
2164
- :name=>"gcommaaccent",
2165
- :boundingbox=>[30,
2166
- -146,
2167
- 580,
2168
- 714]},
2169
- "eth"=>{:charcode=>-1,
2170
- :wx=>600,
2171
- :name=>"eth",
2172
- :boundingbox=>[58,
2173
- -27,
2174
- 543,
2175
- 626]},
2176
- "zcaron"=>{:charcode=>-1,
2177
- :wx=>600,
2178
- :name=>"zcaron",
2179
- :boundingbox=>[81,
2180
- 0,
2181
- 520,
2182
- 667]},
2183
- "ncommaaccent"=>{:charcode=>-1,
2184
- :wx=>600,
2185
- :name=>"ncommaaccent",
2186
- :boundingbox=>[18,
2187
- -250,
2188
- 592,
2189
- 454]},
2190
- "onesuperior"=>{:charcode=>-1,
2191
- :wx=>600,
2192
- :name=>"onesuperior",
2193
- :boundingbox=>[153,
2194
- 230,
2195
- 447,
2196
- 616]},
2197
- "imacron"=>{:charcode=>-1,
2198
- :wx=>600,
2199
- :name=>"imacron",
2200
- :boundingbox=>[77,
2201
- 0,
2202
- 523,
2203
- 585]},
2204
- "Euro"=>{:charcode=>-1,
2205
- :wx=>600,
2206
- :name=>"Euro",
2207
- :boundingbox=>[0,
2208
- 0,
2209
- 0,
2210
- 0]}}
2211
- end
2212
- end