prawn-graph 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. data/README.markdown +51 -2
  2. data/Rakefile +16 -2
  3. data/lib/prawn/graph.rb +1 -4
  4. data/lib/prawn/graph/bar.rb +39 -143
  5. data/lib/prawn/graph/base.rb +207 -0
  6. data/lib/prawn/graph/errors.rb +2 -1
  7. data/lib/prawn/graph/grid.rb +5 -0
  8. data/lib/prawn/graph/line.rb +40 -1
  9. data/lib/prawn/graph/theme.rb +24 -0
  10. metadata +19 -312
  11. data/vendor/prawn-core/COPYING +0 -340
  12. data/vendor/prawn-core/HACKING +0 -46
  13. data/vendor/prawn-core/LICENSE +0 -56
  14. data/vendor/prawn-core/README +0 -138
  15. data/vendor/prawn-core/Rakefile +0 -75
  16. data/vendor/prawn-core/bench/afm_text_bench.rb +0 -18
  17. data/vendor/prawn-core/bench/png_type_6.rb +0 -15
  18. data/vendor/prawn-core/bench/ttf_text_bench.rb +0 -19
  19. data/vendor/prawn-core/bugs/indentation_across_pagebreaks.rb +0 -15
  20. data/vendor/prawn-core/bugs/resolved/canvas_sets_y_to_0.rb +0 -15
  21. data/vendor/prawn-core/bugs/resolved/png_barcode_issue.rb +0 -11
  22. data/vendor/prawn-core/bugs/resolved/transaction_page_number_issue_79.rb +0 -21
  23. data/vendor/prawn-core/bugs/resolved/ttf_fails_in_transactions.rb +0 -24
  24. data/vendor/prawn-core/data/encodings/win_ansi.txt +0 -29
  25. data/vendor/prawn-core/data/fonts/Action Man.dfont +0 -0
  26. data/vendor/prawn-core/data/fonts/Activa.ttf +0 -0
  27. data/vendor/prawn-core/data/fonts/Chalkboard.ttf +0 -0
  28. data/vendor/prawn-core/data/fonts/Courier-Bold.afm +0 -342
  29. data/vendor/prawn-core/data/fonts/Courier-BoldOblique.afm +0 -342
  30. data/vendor/prawn-core/data/fonts/Courier-Oblique.afm +0 -342
  31. data/vendor/prawn-core/data/fonts/Courier.afm +0 -342
  32. data/vendor/prawn-core/data/fonts/DejaVuSans.ttf +0 -0
  33. data/vendor/prawn-core/data/fonts/Dustismo_Roman.ttf +0 -0
  34. data/vendor/prawn-core/data/fonts/Helvetica-Bold.afm +0 -2827
  35. data/vendor/prawn-core/data/fonts/Helvetica-BoldOblique.afm +0 -2827
  36. data/vendor/prawn-core/data/fonts/Helvetica-Oblique.afm +0 -3051
  37. data/vendor/prawn-core/data/fonts/Helvetica.afm +0 -3051
  38. data/vendor/prawn-core/data/fonts/MustRead.html +0 -19
  39. data/vendor/prawn-core/data/fonts/Symbol.afm +0 -213
  40. data/vendor/prawn-core/data/fonts/Times-Bold.afm +0 -2588
  41. data/vendor/prawn-core/data/fonts/Times-BoldItalic.afm +0 -2384
  42. data/vendor/prawn-core/data/fonts/Times-Italic.afm +0 -2667
  43. data/vendor/prawn-core/data/fonts/Times-Roman.afm +0 -2419
  44. data/vendor/prawn-core/data/fonts/ZapfDingbats.afm +0 -225
  45. data/vendor/prawn-core/data/fonts/comicsans.ttf +0 -0
  46. data/vendor/prawn-core/data/fonts/gkai00mp.ttf +0 -0
  47. data/vendor/prawn-core/data/images/16bit.alpha +0 -0
  48. data/vendor/prawn-core/data/images/16bit.dat +0 -0
  49. data/vendor/prawn-core/data/images/16bit.png +0 -0
  50. data/vendor/prawn-core/data/images/arrow.png +0 -0
  51. data/vendor/prawn-core/data/images/arrow2.png +0 -0
  52. data/vendor/prawn-core/data/images/barcode_issue.png +0 -0
  53. data/vendor/prawn-core/data/images/dice.alpha +0 -0
  54. data/vendor/prawn-core/data/images/dice.dat +0 -0
  55. data/vendor/prawn-core/data/images/dice.png +0 -0
  56. data/vendor/prawn-core/data/images/dice_interlaced.png +0 -0
  57. data/vendor/prawn-core/data/images/fractal.jpg +0 -0
  58. data/vendor/prawn-core/data/images/letterhead.jpg +0 -0
  59. data/vendor/prawn-core/data/images/page_white_text.alpha +0 -0
  60. data/vendor/prawn-core/data/images/page_white_text.dat +0 -0
  61. data/vendor/prawn-core/data/images/page_white_text.png +0 -0
  62. data/vendor/prawn-core/data/images/pigs.jpg +0 -0
  63. data/vendor/prawn-core/data/images/rails.dat +0 -0
  64. data/vendor/prawn-core/data/images/rails.png +0 -0
  65. data/vendor/prawn-core/data/images/ruport.png +0 -0
  66. data/vendor/prawn-core/data/images/ruport_data.dat +0 -0
  67. data/vendor/prawn-core/data/images/ruport_transparent.png +0 -0
  68. data/vendor/prawn-core/data/images/ruport_type0.png +0 -0
  69. data/vendor/prawn-core/data/images/stef.jpg +0 -0
  70. data/vendor/prawn-core/data/images/tru256.bmp +0 -0
  71. data/vendor/prawn-core/data/images/web-links.dat +0 -1
  72. data/vendor/prawn-core/data/images/web-links.png +0 -0
  73. data/vendor/prawn-core/data/shift_jis_text.txt +0 -1
  74. data/vendor/prawn-core/examples/bounding_box/bounding_boxes.rb +0 -43
  75. data/vendor/prawn-core/examples/bounding_box/indentation.rb +0 -34
  76. data/vendor/prawn-core/examples/bounding_box/russian_boxes.rb +0 -36
  77. data/vendor/prawn-core/examples/bounding_box/stretched_nesting.rb +0 -67
  78. data/vendor/prawn-core/examples/column_box/column_box_example.rb +0 -43
  79. data/vendor/prawn-core/examples/example_helper.rb +0 -3
  80. data/vendor/prawn-core/examples/general/background.rb +0 -23
  81. data/vendor/prawn-core/examples/general/canvas.rb +0 -15
  82. data/vendor/prawn-core/examples/general/context_sensitive_headers.rb +0 -37
  83. data/vendor/prawn-core/examples/general/float.rb +0 -11
  84. data/vendor/prawn-core/examples/general/margin.rb +0 -36
  85. data/vendor/prawn-core/examples/general/measurement_units.rb +0 -51
  86. data/vendor/prawn-core/examples/general/metadata-info.rb +0 -16
  87. data/vendor/prawn-core/examples/general/multi_page_layout.rb +0 -18
  88. data/vendor/prawn-core/examples/general/outlines.rb +0 -50
  89. data/vendor/prawn-core/examples/general/page_geometry.rb +0 -31
  90. data/vendor/prawn-core/examples/general/page_numbering.rb +0 -15
  91. data/vendor/prawn-core/examples/general/repeaters.rb +0 -47
  92. data/vendor/prawn-core/examples/general/stamp.rb +0 -41
  93. data/vendor/prawn-core/examples/graphics/basic_images.rb +0 -23
  94. data/vendor/prawn-core/examples/graphics/cmyk.rb +0 -12
  95. data/vendor/prawn-core/examples/graphics/curves.rb +0 -11
  96. data/vendor/prawn-core/examples/graphics/hexagon.rb +0 -13
  97. data/vendor/prawn-core/examples/graphics/image_fit.rb +0 -15
  98. data/vendor/prawn-core/examples/graphics/image_flow.rb +0 -37
  99. data/vendor/prawn-core/examples/graphics/image_position.rb +0 -17
  100. data/vendor/prawn-core/examples/graphics/line.rb +0 -32
  101. data/vendor/prawn-core/examples/graphics/png_types.rb +0 -22
  102. data/vendor/prawn-core/examples/graphics/polygons.rb +0 -16
  103. data/vendor/prawn-core/examples/graphics/remote_images.rb +0 -12
  104. data/vendor/prawn-core/examples/graphics/rounded_polygons.rb +0 -19
  105. data/vendor/prawn-core/examples/graphics/rounded_rectangle.rb +0 -20
  106. data/vendor/prawn-core/examples/graphics/ruport_style_helpers.rb +0 -19
  107. data/vendor/prawn-core/examples/graphics/stroke_bounds.rb +0 -20
  108. data/vendor/prawn-core/examples/graphics/stroke_cap_and_join.rb +0 -45
  109. data/vendor/prawn-core/examples/graphics/stroke_dash.rb +0 -42
  110. data/vendor/prawn-core/examples/graphics/transformations.rb +0 -52
  111. data/vendor/prawn-core/examples/graphics/transparency.rb +0 -26
  112. data/vendor/prawn-core/examples/m17n/chinese_text_wrapping.rb +0 -17
  113. data/vendor/prawn-core/examples/m17n/euro.rb +0 -15
  114. data/vendor/prawn-core/examples/m17n/sjis.rb +0 -28
  115. data/vendor/prawn-core/examples/m17n/utf8.rb +0 -13
  116. data/vendor/prawn-core/examples/m17n/win_ansi_charset.rb +0 -54
  117. data/vendor/prawn-core/examples/text/alignment.rb +0 -18
  118. data/vendor/prawn-core/examples/text/dfont.rb +0 -48
  119. data/vendor/prawn-core/examples/text/family_based_styling.rb +0 -24
  120. data/vendor/prawn-core/examples/text/font_calculations.rb +0 -91
  121. data/vendor/prawn-core/examples/text/font_size.rb +0 -33
  122. data/vendor/prawn-core/examples/text/indent_paragraphs.rb +0 -18
  123. data/vendor/prawn-core/examples/text/kerning.rb +0 -30
  124. data/vendor/prawn-core/examples/text/rotated.rb +0 -98
  125. data/vendor/prawn-core/examples/text/simple_text.rb +0 -17
  126. data/vendor/prawn-core/examples/text/simple_text_ttf.rb +0 -17
  127. data/vendor/prawn-core/examples/text/span.rb +0 -29
  128. data/vendor/prawn-core/examples/text/text_box.rb +0 -88
  129. data/vendor/prawn-core/examples/text/text_box_returning_excess.rb +0 -51
  130. data/vendor/prawn-core/examples/text/text_flow.rb +0 -67
  131. data/vendor/prawn-core/lib/prawn/byte_string.rb +0 -7
  132. data/vendor/prawn-core/lib/prawn/compatibility.rb +0 -51
  133. data/vendor/prawn-core/lib/prawn/core.rb +0 -87
  134. data/vendor/prawn-core/lib/prawn/core/page.rb +0 -88
  135. data/vendor/prawn-core/lib/prawn/core/text.rb +0 -65
  136. data/vendor/prawn-core/lib/prawn/document.rb +0 -596
  137. data/vendor/prawn-core/lib/prawn/document/annotations.rb +0 -65
  138. data/vendor/prawn-core/lib/prawn/document/bounding_box.rb +0 -402
  139. data/vendor/prawn-core/lib/prawn/document/column_box.rb +0 -113
  140. data/vendor/prawn-core/lib/prawn/document/destinations.rb +0 -92
  141. data/vendor/prawn-core/lib/prawn/document/graphics_state.rb +0 -49
  142. data/vendor/prawn-core/lib/prawn/document/internals.rb +0 -153
  143. data/vendor/prawn-core/lib/prawn/document/page_geometry.rb +0 -136
  144. data/vendor/prawn-core/lib/prawn/document/snapshot.rb +0 -80
  145. data/vendor/prawn-core/lib/prawn/document/span.rb +0 -55
  146. data/vendor/prawn-core/lib/prawn/encoding.rb +0 -121
  147. data/vendor/prawn-core/lib/prawn/errors.rb +0 -83
  148. data/vendor/prawn-core/lib/prawn/font.rb +0 -329
  149. data/vendor/prawn-core/lib/prawn/font/afm.rb +0 -217
  150. data/vendor/prawn-core/lib/prawn/font/dfont.rb +0 -34
  151. data/vendor/prawn-core/lib/prawn/font/ttf.rb +0 -341
  152. data/vendor/prawn-core/lib/prawn/graphics.rb +0 -321
  153. data/vendor/prawn-core/lib/prawn/graphics/cap_style.rb +0 -38
  154. data/vendor/prawn-core/lib/prawn/graphics/color.rb +0 -205
  155. data/vendor/prawn-core/lib/prawn/graphics/dash.rb +0 -71
  156. data/vendor/prawn-core/lib/prawn/graphics/join_style.rb +0 -38
  157. data/vendor/prawn-core/lib/prawn/graphics/transformation.rb +0 -157
  158. data/vendor/prawn-core/lib/prawn/graphics/transparency.rb +0 -99
  159. data/vendor/prawn-core/lib/prawn/images.rb +0 -337
  160. data/vendor/prawn-core/lib/prawn/images/jpg.rb +0 -46
  161. data/vendor/prawn-core/lib/prawn/images/png.rb +0 -219
  162. data/vendor/prawn-core/lib/prawn/literal_string.rb +0 -14
  163. data/vendor/prawn-core/lib/prawn/measurement_extensions.rb +0 -46
  164. data/vendor/prawn-core/lib/prawn/measurements.rb +0 -71
  165. data/vendor/prawn-core/lib/prawn/name_tree.rb +0 -166
  166. data/vendor/prawn-core/lib/prawn/object_store.rb +0 -93
  167. data/vendor/prawn-core/lib/prawn/outline.rb +0 -278
  168. data/vendor/prawn-core/lib/prawn/pdf_object.rb +0 -83
  169. data/vendor/prawn-core/lib/prawn/reference.rb +0 -92
  170. data/vendor/prawn-core/lib/prawn/repeater.rb +0 -129
  171. data/vendor/prawn-core/lib/prawn/stamp.rb +0 -128
  172. data/vendor/prawn-core/lib/prawn/text.rb +0 -271
  173. data/vendor/prawn-core/lib/prawn/text/box.rb +0 -414
  174. data/vendor/prawn-core/meta/Rakefile +0 -36
  175. data/vendor/prawn-core/meta/lib/prawn.rb +0 -2
  176. data/vendor/prawn-core/reference_pdfs/alignment.pdf +0 -229
  177. data/vendor/prawn-core/reference_pdfs/background.pdf +0 -0
  178. data/vendor/prawn-core/reference_pdfs/basic_images.pdf +0 -0
  179. data/vendor/prawn-core/reference_pdfs/bounding_boxes.pdf +0 -128
  180. data/vendor/prawn-core/reference_pdfs/canvas.pdf +0 -78
  181. data/vendor/prawn-core/reference_pdfs/chinese_flow.pdf +0 -0
  182. data/vendor/prawn-core/reference_pdfs/cmyk.pdf +0 -0
  183. data/vendor/prawn-core/reference_pdfs/column_box.pdf +0 -3671
  184. data/vendor/prawn-core/reference_pdfs/context_sensitive_headers.pdf +0 -2331
  185. data/vendor/prawn-core/reference_pdfs/curves.pdf +0 -62
  186. data/vendor/prawn-core/reference_pdfs/dfont.pdf +0 -0
  187. data/vendor/prawn-core/reference_pdfs/euro.pdf +0 -75
  188. data/vendor/prawn-core/reference_pdfs/family_style.pdf +0 -286
  189. data/vendor/prawn-core/reference_pdfs/flow.pdf +0 -964
  190. data/vendor/prawn-core/reference_pdfs/font_calculations.pdf +0 -0
  191. data/vendor/prawn-core/reference_pdfs/font_size.pdf +0 -142
  192. data/vendor/prawn-core/reference_pdfs/hexagon.pdf +0 -61
  193. data/vendor/prawn-core/reference_pdfs/image-flow.pdf +0 -0
  194. data/vendor/prawn-core/reference_pdfs/image_fit.pdf +0 -0
  195. data/vendor/prawn-core/reference_pdfs/image_position.pdf +0 -0
  196. data/vendor/prawn-core/reference_pdfs/indentation.pdf +0 -124
  197. data/vendor/prawn-core/reference_pdfs/kerning.pdf +0 -0
  198. data/vendor/prawn-core/reference_pdfs/landscape_a4.pdf +0 -52
  199. data/vendor/prawn-core/reference_pdfs/landscape_legal.pdf +0 -52
  200. data/vendor/prawn-core/reference_pdfs/landscape_letter.pdf +0 -52
  201. data/vendor/prawn-core/reference_pdfs/lines.pdf +0 -116
  202. data/vendor/prawn-core/reference_pdfs/margin.pdf +0 -3850
  203. data/vendor/prawn-core/reference_pdfs/measurement_units.pdf +0 -4667
  204. data/vendor/prawn-core/reference_pdfs/metadata-info.pdf +0 -88
  205. data/vendor/prawn-core/reference_pdfs/multi-layout.pdf +0 -209
  206. data/vendor/prawn-core/reference_pdfs/page_with_numbering.pdf +0 -156
  207. data/vendor/prawn-core/reference_pdfs/png_types.pdf +0 -0
  208. data/vendor/prawn-core/reference_pdfs/portrait_a4.pdf +0 -52
  209. data/vendor/prawn-core/reference_pdfs/portrait_legal.pdf +0 -52
  210. data/vendor/prawn-core/reference_pdfs/portrait_letter.pdf +0 -52
  211. data/vendor/prawn-core/reference_pdfs/pretty_polygons.pdf +0 -122
  212. data/vendor/prawn-core/reference_pdfs/remote_images.pdf +0 -0
  213. data/vendor/prawn-core/reference_pdfs/ruport.pdf +0 -101
  214. data/vendor/prawn-core/reference_pdfs/russian_boxes.pdf +0 -2780
  215. data/vendor/prawn-core/reference_pdfs/simple_text.pdf +0 -136
  216. data/vendor/prawn-core/reference_pdfs/simple_text_ttf.pdf +0 -0
  217. data/vendor/prawn-core/reference_pdfs/sjis.pdf +0 -0
  218. data/vendor/prawn-core/reference_pdfs/span.pdf +0 -1975
  219. data/vendor/prawn-core/reference_pdfs/stamp.pdf +0 -649
  220. data/vendor/prawn-core/reference_pdfs/stretched_nesting.pdf +0 -200
  221. data/vendor/prawn-core/reference_pdfs/stroke_bounds.pdf +0 -135
  222. data/vendor/prawn-core/reference_pdfs/stroke_cap_and_join.pdf +0 -80
  223. data/vendor/prawn-core/reference_pdfs/stroke_dash.pdf +0 -457
  224. data/vendor/prawn-core/reference_pdfs/text_box.pdf +0 -962
  225. data/vendor/prawn-core/reference_pdfs/text_box_returning_excess.pdf +0 -271
  226. data/vendor/prawn-core/reference_pdfs/transparency.pdf +0 -347
  227. data/vendor/prawn-core/reference_pdfs/utf8.pdf +0 -0
  228. data/vendor/prawn-core/reference_pdfs/win-ansi.pdf +0 -6172
  229. data/vendor/prawn-core/spec/annotations_spec.rb +0 -90
  230. data/vendor/prawn-core/spec/bounding_box_spec.rb +0 -185
  231. data/vendor/prawn-core/spec/destinations_spec.rb +0 -15
  232. data/vendor/prawn-core/spec/document_spec.rb +0 -408
  233. data/vendor/prawn-core/spec/font_spec.rb +0 -314
  234. data/vendor/prawn-core/spec/graphics_spec.rb +0 -438
  235. data/vendor/prawn-core/spec/images_spec.rb +0 -79
  236. data/vendor/prawn-core/spec/jpg_spec.rb +0 -25
  237. data/vendor/prawn-core/spec/measurement_units_spec.rb +0 -23
  238. data/vendor/prawn-core/spec/name_tree_spec.rb +0 -112
  239. data/vendor/prawn-core/spec/object_store_spec.rb +0 -75
  240. data/vendor/prawn-core/spec/outline_spec.rb +0 -229
  241. data/vendor/prawn-core/spec/pdf_object_spec.rb +0 -122
  242. data/vendor/prawn-core/spec/png_spec.rb +0 -236
  243. data/vendor/prawn-core/spec/reference_spec.rb +0 -82
  244. data/vendor/prawn-core/spec/repeater_spec.rb +0 -96
  245. data/vendor/prawn-core/spec/snapshot_spec.rb +0 -138
  246. data/vendor/prawn-core/spec/span_spec.rb +0 -49
  247. data/vendor/prawn-core/spec/spec_helper.rb +0 -24
  248. data/vendor/prawn-core/spec/stamp_spec.rb +0 -108
  249. data/vendor/prawn-core/spec/stroke_styles_spec.rb +0 -152
  250. data/vendor/prawn-core/spec/text_at_spec.rb +0 -119
  251. data/vendor/prawn-core/spec/text_box_spec.rb +0 -603
  252. data/vendor/prawn-core/spec/text_spec.rb +0 -308
  253. data/vendor/prawn-core/spec/transparency_spec.rb +0 -75
  254. data/vendor/prawn-core/vendor/pdf-inspector/README +0 -18
  255. data/vendor/prawn-core/vendor/pdf-inspector/lib/pdf/inspector.rb +0 -26
  256. data/vendor/prawn-core/vendor/pdf-inspector/lib/pdf/inspector/extgstate.rb +0 -18
  257. data/vendor/prawn-core/vendor/pdf-inspector/lib/pdf/inspector/graphics.rb +0 -131
  258. data/vendor/prawn-core/vendor/pdf-inspector/lib/pdf/inspector/page.rb +0 -25
  259. data/vendor/prawn-core/vendor/pdf-inspector/lib/pdf/inspector/text.rb +0 -31
  260. data/vendor/prawn-core/vendor/pdf-inspector/lib/pdf/inspector/xobject.rb +0 -19
  261. data/vendor/prawn-core/vendor/ttfunk/data/fonts/DejaVuSans.ttf +0 -0
  262. data/vendor/prawn-core/vendor/ttfunk/data/fonts/comicsans.ttf +0 -0
  263. data/vendor/prawn-core/vendor/ttfunk/example.rb +0 -45
  264. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk.rb +0 -102
  265. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/directory.rb +0 -17
  266. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/encoding/mac_roman.rb +0 -88
  267. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/encoding/windows_1252.rb +0 -69
  268. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/reader.rb +0 -44
  269. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/resource_file.rb +0 -78
  270. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset.rb +0 -18
  271. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset/base.rb +0 -141
  272. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset/mac_roman.rb +0 -46
  273. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset/unicode.rb +0 -48
  274. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset/unicode_8bit.rb +0 -63
  275. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset/windows_1252.rb +0 -51
  276. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/subset_collection.rb +0 -72
  277. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table.rb +0 -46
  278. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/cmap.rb +0 -34
  279. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/cmap/format00.rb +0 -54
  280. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/cmap/format04.rb +0 -126
  281. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/cmap/subtable.rb +0 -79
  282. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/glyf.rb +0 -64
  283. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/glyf/compound.rb +0 -81
  284. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/glyf/simple.rb +0 -37
  285. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/head.rb +0 -44
  286. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/hhea.rb +0 -41
  287. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/hmtx.rb +0 -47
  288. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/kern.rb +0 -79
  289. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/kern/format0.rb +0 -62
  290. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/loca.rb +0 -43
  291. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/maxp.rb +0 -40
  292. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/name.rb +0 -119
  293. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/os2.rb +0 -78
  294. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/post.rb +0 -91
  295. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/post/format10.rb +0 -43
  296. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/post/format20.rb +0 -35
  297. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/post/format25.rb +0 -23
  298. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/post/format30.rb +0 -17
  299. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/post/format40.rb +0 -17
  300. data/vendor/prawn-core/vendor/ttfunk/lib/ttfunk/table/simple.rb +0 -14
  301. data/vendor/prawn-core/www/index.html +0 -196
  302. data/vendor/prawn-core/www/media/bounding_boxes.pdf +0 -146
  303. data/vendor/prawn-core/www/media/bounding_boxes.png +0 -0
  304. data/vendor/prawn-core/www/media/bounding_boxes_out.png +0 -0
  305. data/vendor/prawn-core/www/media/fancy_table.pdf +0 -350
  306. data/vendor/prawn-core/www/media/image.pdf +0 -0
  307. data/vendor/prawn-core/www/media/images.png +0 -0
  308. data/vendor/prawn-core/www/media/prawn_logo.png +0 -0
  309. data/vendor/prawn-core/www/media/tables.png +0 -0
  310. data/vendor/prawn-core/www/media/utf8.pdf +0 -0
  311. data/vendor/prawn-core/www/media/utf8.png +0 -0
  312. data/vendor/prawn-core/www/prawn-Chinese.html +0 -113
  313. data/vendor/prawn-core/www/prawn.css +0 -86
  314. data/vendor/prawn-core/www/twilight.css +0 -266
@@ -1,308 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require File.join(File.expand_path(File.dirname(__FILE__)), "spec_helper")
4
-
5
- describe "#height_of" do
6
- before(:each) { create_pdf }
7
-
8
- it "should return the height that would be required to print a" +
9
- "particular string of text" do
10
- original_y = @pdf.y
11
- @pdf.text("Foo")
12
- new_y = @pdf.y
13
- @pdf.height_of("Foo", :width => 300).should.be.close(original_y - new_y, 0.0001)
14
- end
15
-
16
- it "should raise CannotFit if a too-small width is given" do
17
- lambda do
18
- @pdf.height_of("text", :width => 1)
19
- end.should.raise(Prawn::Errors::CannotFit)
20
- end
21
-
22
- it "should raise Prawn::Errors::UnknownOption if :indent_paragraphs option is provided" do
23
- lambda {
24
- @pdf.height_of("hai", :width => 300,
25
- :indent_paragraphs => 60)
26
- }.should.raise(Prawn::Errors::UnknownOption)
27
- end
28
-
29
- it "should not raise Prawn::Errors::UnknownOption if :final_gap option is provided" do
30
- lambda {
31
- @pdf.height_of("hai", :width => 300,
32
- :final_gap => true)
33
- }.should.not.raise(Prawn::Errors::UnknownOption)
34
- end
35
- end
36
-
37
- describe "#text" do
38
- before(:each) { create_pdf }
39
-
40
- it "should raise ArgumentError if :at option included" do
41
- lambda { @pdf.text("hai", :at => [0, 0]) }.should.raise(ArgumentError)
42
- end
43
-
44
- it "should advance down the document based on font_height" do
45
- position = @pdf.y
46
- @pdf.text "Foo"
47
-
48
- @pdf.y.should.be.close(position - @pdf.font.height, 0.0001)
49
-
50
- position = @pdf.y
51
- @pdf.text "Foo\nBar\nBaz"
52
- @pdf.y.should.be.close(position - 3*@pdf.font.height, 0.0001)
53
- end
54
-
55
- it "should advance down the document based on font_height" +
56
- " with size option" do
57
- position = @pdf.y
58
- @pdf.text "Foo", :size => 15
59
-
60
- @pdf.font_size = 15
61
- @pdf.y.should.be.close(position - @pdf.font.height, 0.0001)
62
-
63
- position = @pdf.y
64
- @pdf.text "Foo\nBar\nBaz"
65
- @pdf.y.should.be.close(position - 3*@pdf.font.height, 0.0001)
66
- end
67
-
68
- it "should advance down the document based on font_height" +
69
- " with leading option" do
70
- position = @pdf.y
71
- leading = 2
72
- @pdf.text "Foo", :leading => leading
73
-
74
- @pdf.y.should.be.close(position - @pdf.font.height - leading, 0.0001)
75
-
76
- position = @pdf.y
77
- @pdf.text "Foo\nBar\nBaz"
78
- @pdf.y.should.be.close(position - 3*@pdf.font.height, 0.0001)
79
- end
80
-
81
- it "should advance down the document based on font ascender only "+
82
- "if final_gap is given" do
83
- position = @pdf.y
84
- @pdf.text "Foo", :final_gap => false
85
-
86
- @pdf.y.should.be.close(position - @pdf.font.ascender, 0.0001)
87
-
88
- position = @pdf.y
89
- @pdf.text "Foo\nBar\nBaz", :final_gap => false
90
- @pdf.y.should.be.close(position - 2*@pdf.font.height - @pdf.font.ascender, 0.0001)
91
- end
92
-
93
- it "should default to 12 point helvetica" do
94
- @pdf.text "Blah"
95
- text = PDF::Inspector::Text.analyze(@pdf.render)
96
- text.font_settings[0][:name].should == :Helvetica
97
- text.font_settings[0][:size].should == 12
98
- text.strings.first.should == "Blah"
99
- end
100
-
101
- it "should allow setting font size" do
102
- @pdf.text "Blah", :size => 16
103
- text = PDF::Inspector::Text.analyze(@pdf.render)
104
- text.font_settings[0][:size].should == 16
105
- end
106
-
107
- it "should allow setting a default font size" do
108
- @pdf.font_size = 16
109
- @pdf.text "Blah"
110
- text = PDF::Inspector::Text.analyze(@pdf.render)
111
- text.font_settings[0][:size].should == 16
112
- end
113
-
114
- it "should allow overriding default font for a single instance" do
115
- @pdf.font_size = 16
116
-
117
- @pdf.text "Blah", :size => 11
118
- @pdf.text "Blaz"
119
- text = PDF::Inspector::Text.analyze(@pdf.render)
120
- text.font_settings[0][:size].should == 11
121
- text.font_settings[1][:size].should == 16
122
- end
123
-
124
- it "should allow setting a font size transaction with a block" do
125
- @pdf.font_size 16 do
126
- @pdf.text 'Blah'
127
- end
128
-
129
- @pdf.text 'blah'
130
-
131
- text = PDF::Inspector::Text.analyze(@pdf.render)
132
- text.font_settings[0][:size].should == 16
133
- text.font_settings[1][:size].should == 12
134
- end
135
-
136
- it "should allow manual setting the font size " +
137
- "when in a font size block" do
138
- @pdf.font_size(16) do
139
- @pdf.text 'Foo'
140
- @pdf.text 'Blah', :size => 11
141
- @pdf.text 'Blaz'
142
- end
143
- text = PDF::Inspector::Text.analyze(@pdf.render)
144
- text.font_settings[0][:size].should == 16
145
- text.font_settings[1][:size].should == 11
146
- text.font_settings[2][:size].should == 16
147
- end
148
-
149
- it "should allow registering of built-in font_settings on the fly" do
150
- @pdf.font "Times-Roman"
151
- @pdf.text "Blah"
152
- @pdf.font "Courier"
153
- @pdf.text "Blaz"
154
- text = PDF::Inspector::Text.analyze(@pdf.render)
155
- text.font_settings[0][:name].should == :"Times-Roman"
156
- text.font_settings[1][:name].should == :Courier
157
- end
158
-
159
- it "should utilise the same default font across multiple pages" do
160
- @pdf.text "Blah"
161
- @pdf.start_new_page
162
- @pdf.text "Blaz"
163
- text = PDF::Inspector::Text.analyze(@pdf.render)
164
-
165
- text.font_settings.size.should == 2
166
- text.font_settings[0][:name].should == :Helvetica
167
- text.font_settings[1][:name].should == :Helvetica
168
- end
169
-
170
- it "should raise an exception when an unknown font is used" do
171
- lambda { @pdf.font "Pao bu" }.should.raise(Prawn::Errors::UnknownFont)
172
- end
173
-
174
- it "should correctly render a utf-8 string when using a built-in font" do
175
- str = "©" # copyright symbol
176
- @pdf.text str
177
-
178
- # grab the text from the rendered PDF and ensure it matches
179
- text = PDF::Inspector::Text.analyze(@pdf.render)
180
- text.strings.first.should == str
181
- end
182
-
183
- it "should correctly render a string with higher bit characters across" +
184
- " a page break when using a built-in font" do
185
- str = "©"
186
- @pdf.move_cursor_to(@pdf.font.height)
187
- @pdf.text(str + "\n" + str)
188
-
189
- # grab the text from the rendered PDF and ensure it matches
190
- text = PDF::Inspector::Text.analyze(@pdf.render)
191
- text.strings[1].should == str.strip
192
- end
193
-
194
- it "should correctly render a string with higher bit characters across" +
195
- " a page break when using a built-in font and :indent_paragraphs option" do
196
- str = "©"
197
- @pdf.move_cursor_to(@pdf.font.height)
198
- @pdf.text(str + "\n" + str, :indent_paragraphs => 20)
199
-
200
- # grab the text from the rendered PDF and ensure it matches
201
- text = PDF::Inspector::Text.analyze(@pdf.render)
202
- text.strings[1].should == str.strip
203
- end
204
-
205
- if "spec".respond_to?(:encode!)
206
- # Handle non utf-8 string encodings in a sane way on M17N aware VMs
207
- it "should raise an exception when a utf-8 incompatible string is rendered" do
208
- str = "Blah \xDD"
209
- str.force_encoding("ASCII-8BIT")
210
- lambda { @pdf.text str }.should.raise(ArgumentError)
211
- end
212
- it "should not raise an exception when a shift-jis string is rendered" do
213
- datafile = "#{Prawn::BASEDIR}/data/shift_jis_text.txt"
214
- sjis_str = File.open(datafile, "r:shift_jis") { |f| f.gets }
215
- @pdf.font("#{Prawn::BASEDIR}/data/fonts/gkai00mp.ttf")
216
- lambda { @pdf.text sjis_str }.should.not.raise(ArgumentError)
217
- end
218
- else
219
- # Handle non utf-8 string encodings in a sane way on non-M17N aware VMs
220
- it "should raise an exception when a corrupt utf-8 string is rendered" do
221
- str = "Blah \xDD"
222
- lambda { @pdf.text str }.should.raise(ArgumentError)
223
- end
224
- it "should raise an exception when a shift-jis string is rendered" do
225
- sjis_str = File.read("#{Prawn::BASEDIR}/data/shift_jis_text.txt")
226
- lambda { @pdf.text sjis_str }.should.raise(ArgumentError)
227
- end
228
- end
229
-
230
- it "should call move_past_bottom when printing more text than can fit" +
231
- " between the current document.y and bounds.bottom" do
232
- @pdf.y = @pdf.font.height
233
- @pdf.text "Hello"
234
- @pdf.text "World"
235
- pages = PDF::Inspector::Page.analyze(@pdf.render).pages
236
- pages.size.should == 2
237
- pages[0][:strings].should == ["Hello"]
238
- pages[1][:strings].should == ["World"]
239
- end
240
-
241
- it "should be able to use a custom word-wrap object" do
242
- hello = "hello " * 25
243
- world = "world " * 25
244
- @pdf.text(hello + "\n" + world, :line_wrap => TestWordWrap.new)
245
- text = PDF::Inspector::Text.analyze(@pdf.render)
246
- text.strings[0].should == hello.strip
247
- text.strings[1].should == world.strip
248
- end
249
-
250
- it "should be able to globally set the custom word-wrap object" do
251
- hello = "hello " * 25
252
- world = "world " * 25
253
- @pdf.default_line_wrap = TestWordWrap.new
254
- @pdf.text(hello + "\n" + world)
255
- text = PDF::Inspector::Text.analyze(@pdf.render)
256
- text.strings[0].should == hello.strip
257
- text.strings[1].should == world.strip
258
- end
259
-
260
- describe "with :indent_paragraphs option" do
261
- it "should indent the paragraphs" do
262
- hello = "hello " * 50
263
- hello2 = "hello " * 50
264
- @pdf.text(hello + "\n" + hello2, :indent_paragraphs => 60)
265
- text = PDF::Inspector::Text.analyze(@pdf.render)
266
- text.strings[0].should == ("hello " * 19).strip
267
- text.strings[1].should == ("hello " * 21).strip
268
- text.strings[3].should == ("hello " * 19).strip
269
- text.strings[4].should == ("hello " * 21).strip
270
- end
271
- describe "when wrap to new page, and first line of new page" +
272
- " is not the start of a new paragraph, that line should" +
273
- " not be indented" do
274
- it "should indent the paragraphs" do
275
- hello = "hello " * 50
276
- hello2 = "hello " * 50
277
- @pdf.move_cursor_to(@pdf.font.height)
278
- @pdf.text(hello + "\n" + hello2, :indent_paragraphs => 60)
279
- text = PDF::Inspector::Text.analyze(@pdf.render)
280
- text.strings[0].should == ("hello " * 19).strip
281
- text.strings[1].should == ("hello " * 21).strip
282
- text.strings[3].should == ("hello " * 19).strip
283
- text.strings[4].should == ("hello " * 21).strip
284
- end
285
- end
286
- describe "when wrap to new page, and first line of new page" +
287
- " is the start of a new paragraph, that line should" +
288
- " be indented" do
289
- it "should indent the paragraphs" do
290
- hello = "hello " * 50
291
- hello2 = "hello " * 50
292
- @pdf.move_cursor_to(@pdf.font.height * 3)
293
- @pdf.text(hello + "\n" + hello2, :indent_paragraphs => 60)
294
- text = PDF::Inspector::Text.analyze(@pdf.render)
295
- text.strings[0].should == ("hello " * 19).strip
296
- text.strings[1].should == ("hello " * 21).strip
297
- text.strings[3].should == ("hello " * 19).strip
298
- text.strings[4].should == ("hello " * 21).strip
299
- end
300
- end
301
- end
302
- end
303
-
304
- class TestWordWrap
305
- def wrap_line(line, options)
306
- line
307
- end
308
- end
@@ -1,75 +0,0 @@
1
- require File.join(File.expand_path(File.dirname(__FILE__)), "spec_helper")
2
-
3
- describe "Document with transparency" do
4
- it "the PDF version should be at least 1.4" do
5
- create_pdf
6
- @pdf.transparent(0.5)
7
- str = @pdf.render
8
- str[0,8].should == "%PDF-1.4"
9
- end
10
-
11
- it "a new extended graphics state should be created for "+
12
- "each unique transparency setting" do
13
- create_pdf
14
- @pdf.transparent(0.5, 0.2)
15
- @pdf.transparent(0.5, 0.75)
16
- extgstates = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates
17
- extgstates.length.should == 2
18
- end
19
-
20
- it "a new extended graphics state should not be created for "+
21
- "each duplicate transparency setting" do
22
- create_pdf
23
- @pdf.transparent(0.5, 0.75)
24
- @pdf.transparent(0.5, 0.75)
25
- extgstates = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates
26
- extgstates.length.should == 1
27
- end
28
-
29
- it "setting the transparency with only one parameter sets the transparency"+
30
- " for both the fill and the stroke" do
31
- create_pdf
32
- @pdf.transparent(0.5)
33
- extgstate = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates[0]
34
- extgstate[:opacity].should == 0.5
35
- extgstate[:stroke_opacity].should == 0.5
36
- end
37
-
38
- it "setting the transparency with a numerical parameter and "+
39
- "a :stroke should set the fill transparency to the numerical parameter "+
40
- "and the stroke transparency to the option" do
41
- create_pdf
42
- @pdf.transparent(0.5, 0.2)
43
- extgstate = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates[0]
44
- extgstate[:opacity].should == 0.5
45
- extgstate[:stroke_opacity].should == 0.2
46
- end
47
-
48
- it "should enforce the valid range of 0.0 to 1.0" do
49
- create_pdf
50
- @pdf.transparent(-0.5, -0.2)
51
- extgstate = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates[0]
52
- extgstate[:opacity].should == 0.0
53
- extgstate[:stroke_opacity].should == 0.0
54
-
55
- create_pdf
56
- @pdf.transparent(2.0, 3.0)
57
- extgstate = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates[0]
58
- extgstate[:opacity].should == 1.0
59
- extgstate[:stroke_opacity].should == 1.0
60
- end
61
-
62
- describe "with more than one page" do
63
- it "the extended graphic state resource should be added to both pages" do
64
- create_pdf
65
- @pdf.transparent(0.5, 0.2)
66
- @pdf.start_new_page
67
- @pdf.transparent(0.5, 0.2)
68
- extgstates = PDF::Inspector::ExtGState.analyze(@pdf.render).extgstates
69
- extgstate = extgstates[0]
70
- extgstates.length.should == 2
71
- extgstate[:opacity].should == 0.5
72
- extgstate[:stroke_opacity].should == 0.2
73
- end
74
- end
75
- end
@@ -1,18 +0,0 @@
1
- PDF::Inspector : A tool for analyzing PDF output
2
-
3
- This library provides a number of PDF::Reader[0] based tools for use in testing
4
- PDF output. Presently, the primary purpose of this tool is to support the
5
- tests found in Prawn[1], a pure Ruby PDF generation library.
6
-
7
- However, it may be useful to others, so we have made it available on Github[2]
8
-
9
- Questions can be directed to the Prawn mailing list[3], but please remember
10
- that this code is not necessarily suitable for production and has no officially
11
- planned release date.
12
-
13
- That having been said, patches are welcome!
14
-
15
- [0] http://github.com/yob/pdf-reader
16
- [1] http://github.com/sandal/prawn
17
- [2] http://github.com/sandal/pdf-inspector
18
- [3] http://groups.google.com/group/prawn-ruby
@@ -1,26 +0,0 @@
1
- require "rubygems"
2
- require "pdf/reader"
3
- require "pdf/inspector/text"
4
- require "pdf/inspector/xobject"
5
- require "pdf/inspector/extgstate"
6
- require "pdf/inspector/graphics"
7
- require "pdf/inspector/page"
8
-
9
- module PDF
10
- class Inspector
11
- def self.analyze(output,*args,&block)
12
- obs = self.new(*args, &block)
13
- PDF::Reader.string(output,obs)
14
- obs
15
- end
16
-
17
- def self.analyze_file(filename,*args,&block)
18
- analyze(File.open(filename, "rb") { |f| f.read },*args,&block)
19
- end
20
-
21
- def self.parse(obj)
22
- PDF::Reader::Parser.new(
23
- PDF::Reader::Buffer.new(StringIO.new(obj)), nil).parse_token
24
- end
25
- end
26
- end
@@ -1,18 +0,0 @@
1
- module PDF
2
- class Inspector
3
- class ExtGState < Inspector
4
- attr_accessor :extgstates
5
-
6
- def initialize
7
- @extgstates = []
8
- end
9
-
10
- def resource_extgstate(*params)
11
- @extgstates << {
12
- :opacity => params[1][:ca],
13
- :stroke_opacity => params[1][:CA]
14
- }
15
- end
16
- end
17
- end
18
- end