prawn-graph 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
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