prawn 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (129) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +7 -5
  3. data/lib/prawn.rb +4 -4
  4. data/lib/prawn/document.rb +47 -46
  5. data/lib/prawn/document/bounding_box.rb +13 -19
  6. data/lib/prawn/document/column_box.rb +3 -5
  7. data/lib/prawn/document/internals.rb +0 -1
  8. data/lib/prawn/document/span.rb +12 -12
  9. data/lib/prawn/errors.rb +32 -33
  10. data/lib/prawn/font.rb +29 -36
  11. data/lib/prawn/font/afm.rb +20 -20
  12. data/lib/prawn/font/dfont.rb +0 -1
  13. data/lib/prawn/font/ttf.rb +30 -27
  14. data/lib/prawn/font_metric_cache.rb +4 -8
  15. data/lib/prawn/graphics.rb +37 -42
  16. data/lib/prawn/graphics/cap_style.rb +1 -1
  17. data/lib/prawn/graphics/color.rb +21 -23
  18. data/lib/prawn/graphics/dash.rb +5 -6
  19. data/lib/prawn/graphics/join_style.rb +1 -2
  20. data/lib/prawn/graphics/patterns.rb +25 -21
  21. data/lib/prawn/graphics/transformation.rb +4 -5
  22. data/lib/prawn/graphics/transparency.rb +6 -8
  23. data/lib/prawn/grid.rb +21 -14
  24. data/lib/prawn/image_handler.rb +2 -2
  25. data/lib/prawn/images.rb +29 -31
  26. data/lib/prawn/images/image.rb +1 -1
  27. data/lib/prawn/images/jpg.rb +10 -12
  28. data/lib/prawn/images/png.rb +13 -13
  29. data/lib/prawn/measurements.rb +7 -14
  30. data/lib/prawn/outline.rb +6 -6
  31. data/lib/prawn/repeater.rb +1 -5
  32. data/lib/prawn/security.rb +17 -25
  33. data/lib/prawn/security/arcfour.rb +1 -1
  34. data/lib/prawn/soft_mask.rb +11 -12
  35. data/lib/prawn/stamp.rb +16 -8
  36. data/lib/prawn/text.rb +23 -20
  37. data/lib/prawn/text/box.rb +3 -6
  38. data/lib/prawn/text/formatted/arranger.rb +9 -12
  39. data/lib/prawn/text/formatted/box.rb +23 -22
  40. data/lib/prawn/text/formatted/fragment.rb +0 -4
  41. data/lib/prawn/text/formatted/line_wrap.rb +13 -24
  42. data/lib/prawn/text/formatted/parser.rb +16 -20
  43. data/lib/prawn/text/formatted/wrap.rb +2 -7
  44. data/lib/prawn/utilities.rb +6 -3
  45. data/lib/prawn/version.rb +1 -1
  46. data/manual/basic_concepts/basic_concepts.rb +0 -2
  47. data/manual/basic_concepts/view.rb +1 -1
  48. data/manual/bounding_box/bounding_box.rb +0 -3
  49. data/manual/bounding_box/russian_boxes.rb +7 -8
  50. data/manual/bounding_box/stretchy.rb +0 -1
  51. data/manual/contents.rb +2 -2
  52. data/manual/cover.rb +11 -12
  53. data/manual/document_and_page_options/document_and_page_options.rb +2 -5
  54. data/manual/document_and_page_options/metadata.rb +10 -10
  55. data/manual/document_and_page_options/page_size.rb +0 -1
  56. data/manual/graphics/fill_rules.rb +5 -4
  57. data/manual/graphics/graphics.rb +0 -3
  58. data/manual/graphics/lines_and_curves.rb +1 -1
  59. data/manual/graphics/rotate.rb +0 -2
  60. data/manual/graphics/scale.rb +4 -2
  61. data/manual/graphics/soft_masks.rb +0 -1
  62. data/manual/graphics/stroke_cap.rb +1 -1
  63. data/manual/graphics/stroke_join.rb +1 -1
  64. data/manual/graphics/translate.rb +3 -3
  65. data/manual/graphics/transparency.rb +0 -1
  66. data/manual/how_to_read_this_manual.rb +0 -1
  67. data/manual/images/images.rb +0 -3
  68. data/manual/layout/boxes.rb +5 -5
  69. data/manual/layout/content.rb +2 -2
  70. data/manual/layout/layout.rb +0 -3
  71. data/manual/outline/outline.rb +0 -3
  72. data/manual/repeatable_content/page_numbering.rb +1 -1
  73. data/manual/repeatable_content/repeatable_content.rb +0 -3
  74. data/manual/repeatable_content/repeater.rb +6 -6
  75. data/manual/security/encryption.rb +0 -2
  76. data/manual/security/permissions.rb +0 -2
  77. data/manual/security/security.rb +0 -3
  78. data/manual/text/alignment.rb +3 -3
  79. data/manual/text/color.rb +0 -1
  80. data/manual/text/column_box.rb +0 -1
  81. data/manual/text/fallback_fonts.rb +2 -2
  82. data/manual/text/formatted_callbacks.rb +3 -2
  83. data/manual/text/paragraph_indentation.rb +2 -3
  84. data/manual/text/registering_families.rb +13 -9
  85. data/manual/text/rotation.rb +0 -1
  86. data/manual/text/text.rb +0 -3
  87. data/manual/text/text_box_overflow.rb +7 -5
  88. data/manual/text/utf8.rb +1 -1
  89. data/manual/text/win_ansi_charset.rb +2 -2
  90. data/prawn.gemspec +4 -4
  91. data/spec/acceptance/png.rb +6 -7
  92. data/spec/annotations_spec.rb +21 -28
  93. data/spec/bounding_box_spec.rb +100 -109
  94. data/spec/column_box_spec.rb +26 -32
  95. data/spec/destinations_spec.rb +2 -4
  96. data/spec/document_spec.rb +145 -151
  97. data/spec/extensions/mocha.rb +0 -1
  98. data/spec/font_metric_cache_spec.rb +7 -7
  99. data/spec/font_spec.rb +103 -102
  100. data/spec/formatted_text_arranger_spec.rb +76 -74
  101. data/spec/formatted_text_box_spec.rb +170 -159
  102. data/spec/formatted_text_fragment_spec.rb +57 -56
  103. data/spec/graphics_spec.rb +158 -175
  104. data/spec/grid_spec.rb +28 -29
  105. data/spec/image_handler_spec.rb +4 -5
  106. data/spec/images_spec.rb +50 -36
  107. data/spec/inline_formatted_text_parser_spec.rb +397 -393
  108. data/spec/jpg_spec.rb +4 -6
  109. data/spec/line_wrap_spec.rb +54 -55
  110. data/spec/measurement_units_spec.rb +12 -15
  111. data/spec/outline_spec.rb +77 -98
  112. data/spec/png_spec.rb +55 -65
  113. data/spec/reference_spec.rb +3 -3
  114. data/spec/repeater_spec.rb +20 -26
  115. data/spec/security_spec.rb +42 -49
  116. data/spec/soft_mask_spec.rb +4 -5
  117. data/spec/span_spec.rb +5 -6
  118. data/spec/spec_helper.rb +2 -4
  119. data/spec/stamp_spec.rb +41 -22
  120. data/spec/stroke_styles_spec.rb +36 -39
  121. data/spec/text_at_spec.rb +28 -29
  122. data/spec/text_box_spec.rb +160 -165
  123. data/spec/text_rendering_mode_spec.rb +9 -9
  124. data/spec/text_spacing_spec.rb +13 -13
  125. data/spec/text_spec.rb +116 -124
  126. data/spec/text_with_inline_formatting_spec.rb +5 -5
  127. data/spec/transparency_spec.rb +20 -20
  128. data/spec/view_spec.rb +0 -1
  129. metadata +7 -7
@@ -40,7 +40,7 @@ module Prawn
40
40
  # pdf.stroke_rectangle([x, y], width, height)
41
41
  # end
42
42
  #
43
- def rotate(angle, options={}, &block)
43
+ def rotate(angle, options = {}, &block)
44
44
  Prawn.verify_options(:origin, options)
45
45
  rad = degree_to_rad(angle)
46
46
  cos = Math.cos(rad)
@@ -48,7 +48,7 @@ module Prawn
48
48
  if options[:origin].nil?
49
49
  transformation_matrix(cos, sin, -sin, cos, 0, 0, &block)
50
50
  else
51
- raise Prawn::Errors::BlockRequired unless block_given?
51
+ fail Prawn::Errors::BlockRequired unless block_given?
52
52
  x = options[:origin][0] + bounds.absolute_left
53
53
  y = options[:origin][1] + bounds.absolute_bottom
54
54
  x_prime = x * cos - y * sin
@@ -112,12 +112,12 @@ module Prawn
112
112
  # pdf.stroke_rectangle([x, y], width, height)
113
113
  # end
114
114
  #
115
- def scale(factor, options={}, &block)
115
+ def scale(factor, options = {}, &block)
116
116
  Prawn.verify_options(:origin, options)
117
117
  if options[:origin].nil?
118
118
  transformation_matrix(factor, 0, 0, factor, 0, 0, &block)
119
119
  else
120
- raise Prawn::Errors::BlockRequired unless block_given?
120
+ fail Prawn::Errors::BlockRequired unless block_given?
121
121
  x = options[:origin][0] + bounds.absolute_left
122
122
  y = options[:origin][1] + bounds.absolute_bottom
123
123
  x_prime = factor * x
@@ -151,7 +151,6 @@ module Prawn
151
151
  restore_graphics_state
152
152
  end
153
153
  end
154
-
155
154
  end
156
155
  end
157
156
  end
@@ -9,7 +9,6 @@
9
9
 
10
10
  module Prawn
11
11
  module Graphics
12
-
13
12
  # The Prawn::Transparency module is used to place transparent
14
13
  # content on the page. It has the capacity for separate
15
14
  # transparency values for stroked content and all other content.
@@ -29,7 +28,6 @@ module Prawn
29
28
  # end
30
29
  #
31
30
  module Transparency
32
-
33
31
  # @group Stable API
34
32
 
35
33
  # Sets the <tt>opacity</tt> and <tt>stroke_opacity</tt> for all
@@ -53,7 +51,7 @@ module Prawn
53
51
  # pdf.fill_and_stroke_circle([x, y], 25)
54
52
  # end
55
53
  #
56
- def transparent(opacity, stroke_opacity=opacity, &block)
54
+ def transparent(opacity, stroke_opacity = opacity, &block)
57
55
  renderer.min_version(1.4)
58
56
 
59
57
  opacity = [[opacity, 0.0].max, 1.0].min
@@ -82,10 +80,11 @@ module Prawn
82
80
  dictionary = opacity_dictionary_registry[key][:obj]
83
81
  dictionary_name = opacity_dictionary_registry[key][:name]
84
82
  else
85
- dictionary = ref!(:Type => :ExtGState,
86
- :CA => stroke_opacity,
87
- :ca => opacity
88
- )
83
+ dictionary = ref!(
84
+ :Type => :ExtGState,
85
+ :CA => stroke_opacity,
86
+ :ca => opacity
87
+ )
89
88
 
90
89
  dictionary_name = "Tr#{next_opacity_dictionary_id}"
91
90
  opacity_dictionary_registry[key] = { :name => dictionary_name,
@@ -95,7 +94,6 @@ module Prawn
95
94
  page.ext_gstates.merge!(dictionary_name => dictionary)
96
95
  dictionary_name
97
96
  end
98
-
99
97
  end
100
98
  end
101
99
  end
@@ -33,17 +33,21 @@ module Prawn
33
33
  #
34
34
  def grid(*args)
35
35
  @boxes ||= {}
36
- @boxes[args] ||= if args.empty?
37
- @grid
36
+ return @boxes[args] if @boxes[args]
37
+
38
+ if args.empty?
39
+ @boxes[args] = @grid
38
40
  else
39
41
  g1, g2 = args
40
- if(g1.class == Array && g2.class == Array &&
41
- g1.length == 2 && g2.length == 2)
42
- multi_box(single_box(*g1), single_box(*g2))
42
+
43
+ if g1.class == Array && g2.class == Array && g1.length == 2 && g2.length == 2
44
+ @boxes[args] = multi_box(single_box(*g1), single_box(*g2))
43
45
  else
44
- single_box(g1, g2)
46
+ @boxes[args] = single_box(g1, g2)
45
47
  end
46
48
  end
49
+
50
+ @boxes[args]
47
51
  end
48
52
 
49
53
  # A Grid represents the entire grid system of a Page and calculates
@@ -69,14 +73,14 @@ module Prawn
69
73
 
70
74
  # Calculates the base height of boxes.
71
75
  def row_height
72
- @row_height ||= subdivide(pdf.bounds.height, rows, row_gutter)
76
+ @row_height ||= subdivide(pdf.bounds.height, rows, row_gutter)
73
77
  end
74
78
 
75
79
  # Diagnostic tool to show all of the grids. Defaults to gray.
76
80
  def show_all(color = "CCCCCC")
77
81
  self.rows.times do |i|
78
82
  self.columns.times do |j|
79
- pdf.grid(i,j).show(color)
83
+ pdf.grid(i, j).show(color)
80
84
  end
81
85
  end
82
86
  end
@@ -88,7 +92,7 @@ module Prawn
88
92
  end
89
93
 
90
94
  def set_gutter(options)
91
- if options.has_key?(:gutter)
95
+ if options.key?(:gutter)
92
96
  @gutter = options[:gutter].to_f
93
97
  @row_gutter, @column_gutter = @gutter, @gutter
94
98
  else
@@ -199,6 +203,7 @@ module Prawn
199
203
  end
200
204
 
201
205
  private
206
+
202
207
  def grid
203
208
  pdf.grid
204
209
  end
@@ -214,7 +219,7 @@ module Prawn
214
219
  end
215
220
 
216
221
  def name
217
- @bs.map {|b| b.name}.join(":")
222
+ @bs.map(&:name).join(":")
218
223
  end
219
224
 
220
225
  def total_height
@@ -250,24 +255,26 @@ module Prawn
250
255
  end
251
256
 
252
257
  private
258
+
253
259
  def left_box
254
- @left_box ||= @bs.min {|a,b| a.left <=> b.left}
260
+ @left_box ||= @bs.min { |a, b| a.left <=> b.left }
255
261
  end
256
262
 
257
263
  def right_box
258
- @right_box ||= @bs.max {|a,b| a.right <=> b.right}
264
+ @right_box ||= @bs.max { |a, b| a.right <=> b.right }
259
265
  end
260
266
 
261
267
  def top_box
262
- @top_box ||= @bs.max {|a,b| a.top <=> b.top}
268
+ @top_box ||= @bs.max { |a, b| a.top <=> b.top }
263
269
  end
264
270
 
265
271
  def bottom_box
266
- @bottom_box ||= @bs.min {|a,b| a.bottom <=> b.bottom}
272
+ @bottom_box ||= @bs.min { |a, b| a.bottom <=> b.bottom }
267
273
  end
268
274
  end
269
275
 
270
276
  private
277
+
271
278
  def single_box(i, j)
272
279
  GridBox.new(self, i, j)
273
280
  end
@@ -37,8 +37,8 @@ module Prawn
37
37
 
38
38
  return handler if handler
39
39
 
40
- raise Prawn::Errors::UnsupportedImageType,
41
- "image file is an unrecognised format"
40
+ fail Prawn::Errors::UnsupportedImageType,
41
+ "image file is an unrecognised format"
42
42
  end
43
43
  end
44
44
  end
@@ -9,7 +9,6 @@ require 'digest/sha1'
9
9
  require 'pathname'
10
10
 
11
11
  module Prawn
12
-
13
12
  module Images
14
13
  # @group Stable API
15
14
 
@@ -60,7 +59,7 @@ module Prawn
60
59
  # dimensions of an image object if needed.
61
60
  # (See also: Prawn::Images::PNG , Prawn::Images::JPG)
62
61
  #
63
- def image(file, options={})
62
+ def image(file, options = {})
64
63
  Prawn.verify_options [:at, :position, :vposition, :height,
65
64
  :width, :scale, :fit], options
66
65
 
@@ -70,7 +69,6 @@ module Prawn
70
69
  info
71
70
  end
72
71
 
73
-
74
72
  # Builds an info object (Prawn::Images::*) and a PDF reference representing
75
73
  # the given image. Return a pair: [pdf_obj, info].
76
74
  #
@@ -93,7 +91,7 @@ module Prawn
93
91
 
94
92
  # Add the image to the PDF and register it in case we see it again.
95
93
  image_obj = info.build_pdf_object(self)
96
- image_registry[image_sha1] = {:obj => image_obj, :info => info}
94
+ image_registry[image_sha1] = { :obj => image_obj, :info => info }
97
95
  end
98
96
 
99
97
  [image_obj, info]
@@ -107,12 +105,12 @@ module Prawn
107
105
  # @private
108
106
  def embed_image(pdf_obj, info, options)
109
107
  # find where the image will be placed and how big it will be
110
- w,h = info.calc_image_dimensions(options)
108
+ w, h = info.calc_image_dimensions(options)
111
109
 
112
110
  if options[:at]
113
- x,y = map_to_absolute(options[:at])
111
+ x, y = map_to_absolute(options[:at])
114
112
  else
115
- x,y = image_position(w,h,options)
113
+ x, y = image_position(w, h, options)
116
114
  move_text_position h
117
115
  end
118
116
 
@@ -141,39 +139,39 @@ module Prawn
141
139
  end
142
140
  # String or Pathname
143
141
  io_or_path = Pathname.new(io_or_path)
144
- raise ArgumentError, "#{io_or_path} not found" unless io_or_path.file?
142
+ fail ArgumentError, "#{io_or_path} not found" unless io_or_path.file?
145
143
  io = io_or_path.open('rb')
146
144
  io
147
145
  end
148
146
 
149
- def image_position(w,h,options)
147
+ def image_position(w, h, options)
150
148
  options[:position] ||= :left
151
149
 
152
150
  y = case options[:vposition]
153
- when :top
154
- bounds.absolute_top
155
- when :center
156
- bounds.absolute_top - (bounds.height - h) / 2.0
157
- when :bottom
158
- bounds.absolute_bottom + h
159
- when Numeric
160
- bounds.absolute_top - options[:vposition]
161
- else
162
- determine_y_with_page_flow(h)
163
- end
151
+ when :top
152
+ bounds.absolute_top
153
+ when :center
154
+ bounds.absolute_top - (bounds.height - h) / 2.0
155
+ when :bottom
156
+ bounds.absolute_bottom + h
157
+ when Numeric
158
+ bounds.absolute_top - options[:vposition]
159
+ else
160
+ determine_y_with_page_flow(h)
161
+ end
164
162
 
165
163
  x = case options[:position]
166
- when :left
167
- bounds.left_side
168
- when :center
169
- bounds.left_side + (bounds.width - w) / 2.0
170
- when :right
171
- bounds.right_side - w
172
- when Numeric
173
- options[:position] + bounds.left_side
174
- end
175
-
176
- return [x,y]
164
+ when :left
165
+ bounds.left_side
166
+ when :center
167
+ bounds.left_side + (bounds.width - w) / 2.0
168
+ when :right
169
+ bounds.right_side - w
170
+ when Numeric
171
+ options[:position] + bounds.left_side
172
+ end
173
+
174
+ return [x, y]
177
175
  end
178
176
 
179
177
  def determine_y_with_page_flow(h)
@@ -42,7 +42,7 @@ module Prawn
42
42
  self.scaled_width = w
43
43
  self.scaled_height = h
44
44
 
45
- [w,h]
45
+ [w, h]
46
46
  end
47
47
  end
48
48
  end
@@ -10,7 +10,6 @@ require 'stringio'
10
10
 
11
11
  module Prawn
12
12
  module Images
13
-
14
13
  # A convenience class that wraps the logic for extracting the parts
15
14
  # of a JPG image that we need to embed them in a PDF
16
15
  #
@@ -39,7 +38,7 @@ module Prawn
39
38
  d.seek(2) # Skip the first two bytes of JPEG identifier.
40
39
  loop do
41
40
  marker, code, length = d.read(4).unpack('CCn')
42
- raise "JPEG marker not found!" if marker != c_marker
41
+ fail "JPEG marker not found!" if marker != c_marker
43
42
 
44
43
  if JPEG_SOF_BLOCKS.include?(code)
45
44
  @bits, @height, @width, @channels = d.read(6).unpack("CnnC")
@@ -55,15 +54,15 @@ module Prawn
55
54
  #
56
55
  def build_pdf_object(document)
57
56
  color_space = case channels
58
- when 1
59
- :DeviceGray
60
- when 3
61
- :DeviceRGB
62
- when 4
63
- :DeviceCMYK
64
- else
65
- raise ArgumentError, 'JPG uses an unsupported number of channels'
66
- end
57
+ when 1
58
+ :DeviceGray
59
+ when 3
60
+ :DeviceRGB
61
+ when 4
62
+ :DeviceCMYK
63
+ else
64
+ fail ArgumentError, 'JPG uses an unsupported number of channels'
65
+ end
67
66
 
68
67
  obj = document.ref!(
69
68
  :Type => :XObject,
@@ -85,7 +84,6 @@ module Prawn
85
84
  obj.stream.filters << :DCTDecode
86
85
  obj
87
86
  end
88
-
89
87
  end
90
88
  end
91
89
  end
@@ -68,9 +68,9 @@ module Prawn
68
68
  @transparency = {}
69
69
  case @color_type
70
70
  when 3
71
- raise Errors::UnsupportedImageType,
72
- "Pallete-based transparency in PNG is not currently supported.\n" +
73
- "See https://github.com/prawnpdf/prawn/issues/783"
71
+ fail Errors::UnsupportedImageType,
72
+ "Pallete-based transparency in PNG is not currently supported.\n" \
73
+ "See https://github.com/prawnpdf/prawn/issues/783"
74
74
  when 0
75
75
  # Greyscale. Corresponding to entries in the PLTE chunk.
76
76
  # Grey is two bytes, range 0 .. (2 ^ bit-depth) - 1
@@ -121,18 +121,18 @@ module Prawn
121
121
  #
122
122
  def build_pdf_object(document)
123
123
  if compression_method != 0
124
- raise Errors::UnsupportedImageType,
125
- 'PNG uses an unsupported compression method'
124
+ fail Errors::UnsupportedImageType,
125
+ 'PNG uses an unsupported compression method'
126
126
  end
127
127
 
128
128
  if filter_method != 0
129
- raise Errors::UnsupportedImageType,
130
- 'PNG uses an unsupported filter method'
129
+ fail Errors::UnsupportedImageType,
130
+ 'PNG uses an unsupported filter method'
131
131
  end
132
132
 
133
133
  if interlace_method != 0
134
- raise Errors::UnsupportedImageType,
135
- 'PNG uses unsupported interlace method'
134
+ fail Errors::UnsupportedImageType,
135
+ 'PNG uses unsupported interlace method'
136
136
  end
137
137
 
138
138
  # some PNG types store the colour and alpha channel data together,
@@ -145,8 +145,8 @@ module Prawn
145
145
  when 3
146
146
  color = :DeviceRGB
147
147
  else
148
- raise Errors::UnsupportedImageType,
149
- "PNG uses an unsupported number of colors (#{png.colors})"
148
+ fail Errors::UnsupportedImageType,
149
+ "PNG uses an unsupported number of colors (#{png.colors})"
150
150
  end
151
151
 
152
152
  # build the image dict
@@ -181,7 +181,7 @@ module Prawn
181
181
  # build the color space array for the image
182
182
  obj.data[:ColorSpace] = [:Indexed,
183
183
  :DeviceRGB,
184
- (palette.size / 3) -1,
184
+ (palette.size / 3) - 1,
185
185
  palette_obj]
186
186
  end
187
187
 
@@ -203,7 +203,7 @@ module Prawn
203
203
  # - An array with N elements, where N is two times the number of color
204
204
  # components.
205
205
  rgb = transparency[:rgb]
206
- obj.data[:Mask] = rgb.collect { |x| [x,x] }.flatten
206
+ obj.data[:Mask] = rgb.collect { |x| [x, x] }.flatten
207
207
  end
208
208
 
209
209
  # For PNG color types 4 and 6, the transparency data is stored as a alpha
@@ -7,37 +7,30 @@ module Prawn
7
7
  # @group Stable API
8
8
 
9
9
  module Measurements
10
-
11
- # ============================================================================
12
- #metric conversions
10
+ # metric conversions
13
11
  def cm2mm(cm)
14
- return cm*10
12
+ return cm * 10
15
13
  end
16
14
 
17
15
  def dm2mm(dm)
18
- return dm*100
16
+ return dm * 100
19
17
  end
20
18
 
21
19
  def m2mm(m)
22
- return m*1000
20
+ return m * 1000
23
21
  end
24
22
 
25
- # ============================================================================
26
23
  # imperial conversions
27
24
  # from http://en.wikipedia.org/wiki/Imperial_units
28
-
29
25
  def ft2in(ft)
30
26
  return ft * 12
31
27
  end
32
28
 
33
29
  def yd2in(yd)
34
- return yd*36
30
+ return yd * 36
35
31
  end
36
32
 
37
-
38
- # ============================================================================
39
33
  # PostscriptPoint-converisons
40
-
41
34
  def pt2pt(pt)
42
35
  return pt
43
36
  end
@@ -55,7 +48,7 @@ module Prawn
55
48
  end
56
49
 
57
50
  def mm2pt(mm)
58
- return mm*(72 / 25.4)
51
+ return mm * (72 / 25.4)
59
52
  end
60
53
 
61
54
  def cm2pt(cm)
@@ -71,7 +64,7 @@ module Prawn
71
64
  end
72
65
 
73
66
  def pt2mm(pt)
74
- return pt * 1 / mm2pt(1)# (25.4 / 72)
67
+ return pt * 1 / mm2pt(1) # (25.4 / 72)
75
68
  end
76
69
  end
77
70
  end