squib 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (230) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.gitmodules +22 -0
  4. data/.travis.yml +4 -5
  5. data/CHANGELOG.md +23 -0
  6. data/CONTRIBUTING.md +40 -0
  7. data/README.md +25 -553
  8. data/RELEASE TODO.md +2 -2
  9. data/Rakefile +6 -64
  10. data/appveyor.yml +0 -4
  11. data/benchmarks/antialias_best.rb +2 -2
  12. data/benchmarks/antialias_fast.rb +2 -2
  13. data/benchmarks/{backend-memory.rb → backend_memory.rb} +2 -2
  14. data/benchmarks/{backend-svg.rb → backend_svg.rb} +2 -2
  15. data/benchmarks/tons_of_png.rb +1 -1
  16. data/benchmarks/tons_of_svg.rb +1 -1
  17. data/benchmarks/tons_of_text.rb +1 -1
  18. data/docs/Makefile +216 -0
  19. data/docs/_static/css/squibdocs.css +18 -0
  20. data/docs/args/draw.rst +36 -0
  21. data/docs/args/expansion.rst +3 -0
  22. data/docs/args/layout.rst +6 -0
  23. data/docs/args/output_dir.rst +6 -0
  24. data/docs/args/range.rst +6 -0
  25. data/docs/args/transform.rst +51 -0
  26. data/docs/args/trim.rst +11 -0
  27. data/docs/args/wh.rst +12 -0
  28. data/docs/args/xy.rst +12 -0
  29. data/docs/arrays.rst +77 -0
  30. data/docs/backends.rst +20 -0
  31. data/docs/bleed.rst +13 -0
  32. data/docs/build_groups.rst +47 -0
  33. data/docs/colors.rst +64 -0
  34. data/docs/conf.py +287 -0
  35. data/docs/config.rst +117 -0
  36. data/docs/data.rst +22 -0
  37. data/docs/dsl/background.rst +20 -0
  38. data/docs/dsl/build.rst +32 -0
  39. data/docs/dsl/build_groups.rst +23 -0
  40. data/docs/dsl/circle.rst +27 -0
  41. data/docs/dsl/cm.rst +19 -0
  42. data/docs/dsl/csv.rst +62 -0
  43. data/docs/dsl/curve.rst +63 -0
  44. data/docs/dsl/deck.rst +45 -0
  45. data/docs/dsl/disable_build.rst +28 -0
  46. data/docs/dsl/ellipse.rst +17 -0
  47. data/docs/dsl/enable_build.rst +25 -0
  48. data/docs/dsl/grid.rst +31 -0
  49. data/docs/dsl/hand.rst +40 -0
  50. data/docs/dsl/hint.rst +15 -0
  51. data/docs/dsl/inches.rst +19 -0
  52. data/docs/dsl/index.rst +9 -0
  53. data/docs/dsl/line.rst +52 -0
  54. data/docs/dsl/png.rst +49 -0
  55. data/docs/dsl/polygon.rst +28 -0
  56. data/docs/dsl/rect.rst +18 -0
  57. data/docs/dsl/save.rst +23 -0
  58. data/docs/dsl/save_pdf.rst +48 -0
  59. data/docs/dsl/save_png.rst +46 -0
  60. data/docs/dsl/save_sheet.rst +55 -0
  61. data/docs/dsl/showcase.rst +65 -0
  62. data/docs/dsl/star.rst +35 -0
  63. data/docs/dsl/svg.rst +119 -0
  64. data/docs/dsl/text.rst +294 -0
  65. data/docs/dsl/triangle.rst +38 -0
  66. data/docs/dsl/use_layout.rst +16 -0
  67. data/docs/dsl/xlsx.rst +50 -0
  68. data/docs/guides/game_icons.rst +2 -0
  69. data/docs/guides/getting-started/index.rst +5 -0
  70. data/docs/guides/getting-started/part_0_learning_ruby.rst +145 -0
  71. data/docs/guides/getting-started/part_1_zero_to_game.rst +216 -0
  72. data/docs/guides/getting-started/part_2_iconography.rst +152 -0
  73. data/docs/guides/getting-started/part_3_workflows.rst +4 -0
  74. data/docs/guides/git.rst +13 -0
  75. data/docs/guides/hello_world.rst +6 -0
  76. data/docs/help.rst +157 -0
  77. data/docs/index.rst +35 -0
  78. data/docs/install.rst +66 -0
  79. data/docs/layouts.rst +235 -0
  80. data/docs/learning.rst +10 -0
  81. data/docs/make.bat +263 -0
  82. data/docs/parameters.rst +26 -0
  83. data/docs/server.bat +1 -0
  84. data/docs/text_feature.rst +86 -0
  85. data/docs/units.rst +6 -0
  86. data/lib/squib.rb +4 -4
  87. data/lib/squib/api/background.rb +5 -10
  88. data/lib/squib/api/data.rb +30 -54
  89. data/lib/squib/api/groups.rb +47 -0
  90. data/lib/squib/api/image.rb +8 -67
  91. data/lib/squib/api/save.rb +15 -105
  92. data/lib/squib/api/settings.rb +8 -22
  93. data/lib/squib/api/shapes.rb +15 -185
  94. data/lib/squib/api/text.rb +9 -49
  95. data/lib/squib/api/text_embed.rb +12 -12
  96. data/lib/squib/api/units.rb +3 -17
  97. data/lib/squib/args/arg_loader.rb +6 -6
  98. data/lib/squib/args/box.rb +2 -2
  99. data/lib/squib/args/card_range.rb +1 -1
  100. data/lib/squib/args/color_validator.rb +2 -2
  101. data/lib/squib/args/coords.rb +2 -2
  102. data/lib/squib/args/csv_opts.rb +25 -0
  103. data/lib/squib/args/dir_validator.rb +1 -1
  104. data/lib/squib/args/draw.rb +2 -2
  105. data/lib/squib/args/embed_adjust.rb +1 -1
  106. data/lib/squib/args/embed_key.rb +1 -1
  107. data/lib/squib/args/hand_special.rb +37 -37
  108. data/lib/squib/args/import.rb +2 -2
  109. data/lib/squib/args/input_file.rb +1 -1
  110. data/lib/squib/args/paint.rb +3 -3
  111. data/lib/squib/args/paragraph.rb +2 -2
  112. data/lib/squib/args/save_batch.rb +2 -2
  113. data/lib/squib/args/scale_box.rb +1 -1
  114. data/lib/squib/args/sheet.rb +3 -3
  115. data/lib/squib/args/showcase_special.rb +2 -2
  116. data/lib/squib/args/svg_special.rb +1 -1
  117. data/lib/squib/args/transform.rb +2 -2
  118. data/lib/squib/args/typographer.rb +5 -4
  119. data/lib/squib/args/unit_conversion.rb +4 -4
  120. data/lib/squib/card.rb +8 -8
  121. data/lib/squib/conf.rb +5 -5
  122. data/lib/squib/deck.rb +20 -18
  123. data/lib/squib/graphics/cairo_context_wrapper.rb +3 -3
  124. data/lib/squib/graphics/gradient_regex.rb +1 -1
  125. data/lib/squib/graphics/hand.rb +2 -2
  126. data/lib/squib/graphics/save_doc.rb +9 -8
  127. data/lib/squib/graphics/save_images.rb +24 -11
  128. data/lib/squib/graphics/shapes.rb +16 -17
  129. data/lib/squib/graphics/showcase.rb +9 -9
  130. data/lib/squib/graphics/text.rb +21 -21
  131. data/lib/squib/layout_parser.rb +9 -9
  132. data/lib/squib/layouts/economy.yml +85 -85
  133. data/lib/squib/layouts/fantasy.yml +101 -101
  134. data/lib/squib/layouts/hand.yml +62 -62
  135. data/lib/squib/layouts/playing-card.yml +35 -35
  136. data/lib/squib/layouts/tuck_box.yml +45 -45
  137. data/lib/squib/sample_helpers.rb +1 -1
  138. data/lib/squib/version.rb +1 -1
  139. data/samples/{backend.rb → backend/_backend.rb} +2 -2
  140. data/samples/basic.rb +3 -3
  141. data/samples/bug134.rb +14 -0
  142. data/samples/build_groups/build_groups.rb +36 -0
  143. data/samples/cairo_access.rb +12 -1
  144. data/samples/{colors.rb → colors/_colors.rb} +12 -12
  145. data/samples/{gradients.rb → colors/_gradients.rb} +1 -1
  146. data/samples/config_text_markup.rb +2 -2
  147. data/samples/custom-config.yml +5 -5
  148. data/samples/custom_config.rb +18 -18
  149. data/samples/{csv_import.rb → data/_csv.rb} +8 -1
  150. data/samples/{excel.rb → data/_excel.rb} +3 -3
  151. data/samples/embed_text.rb +21 -0
  152. data/samples/hello_world.rb +1 -1
  153. data/samples/{load_images.rb → images/_more_load_images.rb} +2 -2
  154. data/samples/layouts.rb +11 -1
  155. data/samples/layouts_builtin.rb +51 -51
  156. data/samples/offset.svg +71 -71
  157. data/samples/ranges.rb +7 -7
  158. data/samples/{hand.rb → saves/_hand.rb} +1 -2
  159. data/samples/{portrait-landscape.rb → saves/_portrait_landscape.rb} +4 -4
  160. data/samples/{saves.rb → saves/_saves.rb} +0 -0
  161. data/samples/{showcase.rb → saves/_showcase.rb} +2 -2
  162. data/samples/{draw_shapes.rb → shapes/_draw_shapes.rb} +1 -1
  163. data/samples/text/_text.rb +4 -3
  164. data/samples/text_options.rb +6 -6
  165. data/samples/unicode.rb +1 -1
  166. data/spec/api/api_data_spec.rb +59 -4
  167. data/spec/api/api_settings_spec.rb +1 -1
  168. data/spec/args/box_spec.rb +7 -7
  169. data/spec/args/draw_spec.rb +19 -19
  170. data/spec/args/embed_key_spec.rb +13 -13
  171. data/spec/args/input_file_spec.rb +2 -2
  172. data/spec/args/paint_spec.rb +5 -5
  173. data/spec/args/paragraph_spec.rb +28 -28
  174. data/spec/args/range_spec.rb +1 -1
  175. data/spec/args/save_batch_spec.rb +10 -10
  176. data/spec/args/scale_box_spec.rb +9 -9
  177. data/spec/args/sheet_spec.rb +8 -8
  178. data/spec/args/showcase_special_spec.rb +15 -15
  179. data/spec/args/transform_spec.rb +4 -4
  180. data/spec/args/typographer_spec.rb +11 -11
  181. data/spec/args/unit_conversion_spec.rb +2 -2
  182. data/spec/card_spec.rb +1 -1
  183. data/spec/commands/new_spec.rb +1 -1
  184. data/spec/data/csv/custom_opts.csv +2 -0
  185. data/spec/data/csv/newline.csv +3 -0
  186. data/spec/data/csv/qty.csv +2 -2
  187. data/spec/data/csv/qty_named.csv +2 -2
  188. data/spec/data/csv/with_spaces.csv +2 -2
  189. data/spec/data/csv/yield.csv +3 -0
  190. data/spec/data/samples/{autoscale_font.rb.txt → autoscale_font/_autoscale_font.rb.txt} +55 -18
  191. data/spec/data/samples/cairo_access.rb.txt +24 -0
  192. data/spec/data/samples/{gradients.rb.txt → colors/_gradients.rb.txt} +0 -0
  193. data/spec/data/samples/config_text_markup.rb.txt +72 -72
  194. data/spec/data/samples/custom_config.rb.txt +1 -0
  195. data/spec/data/samples/{csv_import.rb.txt → data/_csv.rb.txt} +0 -0
  196. data/spec/data/samples/{excel.rb.txt → data/_excel.rb.txt} +0 -0
  197. data/spec/data/samples/embed_text.rb.txt +79 -0
  198. data/spec/data/samples/hello_world.rb.txt +36 -36
  199. data/spec/data/samples/{load_images.rb.txt → images/_more_load_images.rb.txt} +4 -4
  200. data/spec/data/samples/{hand.rb.txt → saves/_hand.rb.txt} +0 -0
  201. data/spec/data/samples/{portrait-landscape.rb.txt → saves/_portrait_landscape.rb.txt} +11 -7
  202. data/spec/data/samples/{save_pdf.rb.txt → saves/_save_pdf.rb.txt} +0 -0
  203. data/spec/data/samples/{saves.rb.txt → saves/_saves.rb.txt} +3 -4
  204. data/spec/data/samples/{showcase.rb.txt → saves/_showcase.rb.txt} +0 -0
  205. data/spec/data/samples/{draw_shapes.rb.txt → shapes/_draw_shapes.rb.txt} +0 -0
  206. data/spec/data/samples/text_options.rb.txt +1125 -1125
  207. data/spec/graphics/cairo_context_wrapper_spec.rb +10 -10
  208. data/spec/graphics/graphics_save_doc_spec.rb +11 -5
  209. data/spec/layout_parser_spec.rb +21 -9
  210. data/spec/logger_spec.rb +2 -2
  211. data/spec/samples/run_samples_spec.rb +1 -1
  212. data/spec/samples/samples_regression_spec.rb +16 -18
  213. data/spec/samples/sanity.rb +9 -9
  214. data/spec/sanity/.gitignore +1 -0
  215. data/spec/sanity/sanity.html.erb +42 -0
  216. data/spec/sanity/sanity_test.rb +42 -0
  217. data/spec/sanity/tests.yml +12 -0
  218. data/spec/spec_helper.rb +22 -20
  219. data/squib.gemspec +3 -4
  220. metadata +143 -81
  221. data/.rspec +0 -1
  222. data/.yardopts +0 -10
  223. data/samples/autoscale_font.rb +0 -27
  224. data/samples/backend-config.yml +0 -5
  225. data/samples/color_shortcuts.rb +0 -6
  226. data/samples/explode_quantities.xlsx +0 -0
  227. data/samples/quantity_explosion.csv +0 -3
  228. data/samples/sample.csv +0 -3
  229. data/samples/sample.xlsx +0 -0
  230. data/squib.sublime-project +0 -42
@@ -7,7 +7,7 @@ describe Squib::Args::UnitConversion do
7
7
  expect(subject.parse(20)).to eq(20)
8
8
  end
9
9
 
10
- it 'strips trailing whitespace' do
10
+ it 'strips trailing whitespace' do
11
11
  expect(subject.parse('1in ')).to eq(300)
12
12
  end
13
13
 
@@ -19,4 +19,4 @@ describe Squib::Args::UnitConversion do
19
19
  expect(subject.parse('1cm')).to eq(118.1102361)
20
20
  end
21
21
 
22
- end
22
+ end
data/spec/card_spec.rb CHANGED
@@ -8,4 +8,4 @@ describe Squib::Card do
8
8
  expect(Squib::logger).to receive(:fatal).with("Back end not recognized: 'broken robots'")
9
9
  expect { Squib::Card.new(deck, 100, 100, 0) }.to raise_error SystemExit
10
10
  end
11
- end
11
+ end
@@ -1,7 +1,7 @@
1
1
  require 'spec_helper'
2
2
  require 'squib'
3
3
 
4
- describe Squib::Commands::New do
4
+ describe Squib::Commands::New do
5
5
 
6
6
  describe '#process' do
7
7
  before(:all) do
@@ -0,0 +1,2 @@
1
+ x-y
2
+ p-|q-r|
@@ -0,0 +1,3 @@
1
+ title,level,notes
2
+ Foo,1,"a
3
+ b"
@@ -1,3 +1,3 @@
1
- Name,Qty
2
- Ha, 3
1
+ Name,Qty
2
+ Ha, 3
3
3
  Ho, 1
@@ -1,3 +1,3 @@
1
- Name,Quantity
2
- Ha, 3
1
+ Name,Quantity
2
+ Ha, 3
3
3
  Ho, 1
@@ -1,3 +1,3 @@
1
- With Spaces ,h2,h3
2
- a b c , 2,3
1
+ With Spaces ,h2,h3
2
+ a b c , 2,3
3
3
  3 ,4
@@ -0,0 +1,3 @@
1
+ a,b
2
+ foo%nbar,1
3
+ 1,blah%n
@@ -14,16 +14,49 @@ cairo: set_source_color(["white"])
14
14
  cairo: paint([])
15
15
  cairo: restore([])
16
16
  cairo: save([])
17
+ cairo: rounded_rectangle([0, 0, 300, 100, 0, 0])
18
+ cairo: set_source_color(["#0000"])
19
+ cairo: fill_preserve([])
17
20
  cairo: set_source_color(["black"])
18
- cairo: translate([65, 400])
21
+ cairo: set_line_width([2.0])
22
+ cairo: set_line_join([0])
23
+ cairo: set_line_cap([0])
24
+ cairo: set_dash([[]])
25
+ cairo: stroke([])
26
+ cairo: restore([])
27
+ cairo: save([])
28
+ cairo: rounded_rectangle([0, 0, 300, 100, 0, 0])
29
+ cairo: set_source_color(["#0000"])
30
+ cairo: fill_preserve([])
31
+ cairo: set_source_color(["black"])
32
+ cairo: set_line_width([2.0])
33
+ cairo: set_line_join([0])
34
+ cairo: set_line_cap([0])
35
+ cairo: set_dash([[]])
36
+ cairo: stroke([])
37
+ cairo: restore([])
38
+ cairo: save([])
39
+ cairo: rounded_rectangle([0, 0, 300, 100, 0, 0])
40
+ cairo: set_source_color(["#0000"])
41
+ cairo: fill_preserve([])
42
+ cairo: set_source_color(["black"])
43
+ cairo: set_line_width([2.0])
44
+ cairo: set_line_join([0])
45
+ cairo: set_line_cap([0])
46
+ cairo: set_dash([[]])
47
+ cairo: stroke([])
48
+ cairo: restore([])
49
+ cairo: save([])
50
+ cairo: set_source_color(["black"])
51
+ cairo: translate([10, 10])
19
52
  cairo: rotate([0])
20
53
  cairo: move_to([0, 0])
21
- pango font: size=([128000])
54
+ pango font: size=([32768])
22
55
  pango: font_description=([MockDouble])
23
- pango: text=(["ShortBig"])
24
- pango: width=([716800])
56
+ pango: text=(["Short & Big"])
57
+ pango: width=([286720])
25
58
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
26
- pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
59
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode none>])
27
60
  pango: alignment=([#<Pango::Layout::Alignment center>])
28
61
  pango: justify=([false])
29
62
  cairo: move_to([0, 0])
@@ -37,15 +70,15 @@ pango: ellipsized?([])
37
70
  cairo: restore([])
38
71
  cairo: save([])
39
72
  cairo: set_source_color(["black"])
40
- cairo: translate([65, 400])
73
+ cairo: translate([10, 10])
41
74
  cairo: rotate([0])
42
75
  cairo: move_to([0, 0])
43
- pango font: size=([46080])
76
+ pango font: size=([18432])
44
77
  pango: font_description=([MockDouble])
45
- pango: text=(["Medium_Length_Name"])
46
- pango: width=([716800])
78
+ pango: text=(["Medium Length & Size"])
79
+ pango: width=([286720])
47
80
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
48
- pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
81
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode none>])
49
82
  pango: alignment=([#<Pango::Layout::Alignment center>])
50
83
  pango: justify=([false])
51
84
  cairo: move_to([0, 0])
@@ -59,15 +92,15 @@ pango: ellipsized?([])
59
92
  cairo: restore([])
60
93
  cairo: save([])
61
94
  cairo: set_source_color(["black"])
62
- cairo: translate([65, 400])
95
+ cairo: translate([10, 10])
63
96
  cairo: rotate([0])
64
97
  cairo: move_to([0, 0])
65
- pango font: size=([36864])
98
+ pango font: size=([12288])
66
99
  pango: font_description=([MockDouble])
67
- pango: text=(["Super_Duper_Long_Name"])
68
- pango: width=([716800])
100
+ pango: text=(["Super duper long string here, therefore a smaller font."])
101
+ pango: width=([286720])
69
102
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
70
- pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
103
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode none>])
71
104
  pango: alignment=([#<Pango::Layout::Alignment center>])
72
105
  pango: justify=([false])
73
106
  cairo: move_to([0, 0])
@@ -79,6 +112,10 @@ cairo: set_line_width([2.0])
79
112
  cairo: stroke([])
80
113
  pango: ellipsized?([])
81
114
  cairo: restore([])
82
- surface: write_to_png(["_output/autoscale_00.png"])
83
- surface: write_to_png(["_output/autoscale_01.png"])
84
- surface: write_to_png(["_output/autoscale_02.png"])
115
+ cairo: set_source([MockDouble, 0, 0])
116
+ cairo: paint([])
117
+ cairo: set_source([MockDouble, 100, 0])
118
+ cairo: paint([])
119
+ cairo: set_source([MockDouble, 200, 0])
120
+ cairo: paint([])
121
+ surface: write_to_png(["./card_00.png"])
@@ -23,5 +23,29 @@ cairo: circle([50, 50, 50])
23
23
  cairo: set_source_color([:red])
24
24
  cairo: fill([])
25
25
  cairo: restore([])
26
+ cairo: translate([500, 500])
27
+ cairo: translate([500, 500])
28
+ cairo: save([])
29
+ cairo: rounded_rectangle([0, 0, 50, 50, 0, 0])
30
+ cairo: set_source_color(["red"])
31
+ cairo: fill_preserve([])
32
+ cairo: set_source_color(["black"])
33
+ cairo: set_line_width([2.0])
34
+ cairo: set_line_join([0])
35
+ cairo: set_line_cap([0])
36
+ cairo: set_dash([[]])
37
+ cairo: stroke([])
38
+ cairo: restore([])
39
+ cairo: save([])
40
+ cairo: rounded_rectangle([0, 0, 50, 50, 0, 0])
41
+ cairo: set_source_color(["red"])
42
+ cairo: fill_preserve([])
43
+ cairo: set_source_color(["black"])
44
+ cairo: set_line_width([2.0])
45
+ cairo: set_line_join([0])
46
+ cairo: set_line_cap([0])
47
+ cairo: set_dash([[]])
48
+ cairo: stroke([])
49
+ cairo: restore([])
26
50
  surface: write_to_png(["_output/cairo_access_00.png"])
27
51
  surface: write_to_png(["_output/cairo_access_01.png"])
@@ -1,72 +1,72 @@
1
- cairo: antialias=(["gray"])
2
- cairo: save([])
3
- cairo: set_source_color(["white"])
4
- cairo: paint([])
5
- cairo: restore([])
6
- cairo: save([])
7
- cairo: set_source_color(["black"])
8
- cairo: translate([10, 10])
9
- cairo: rotate([0])
10
- cairo: move_to([0, 0])
11
- pango: font_description=([MockDouble])
12
- pango: text=(["\"'Yaml ain't markup', he says\""])
13
- pango: markup=(["foo"])
14
- pango: width=([307200])
15
- pango: height=([204800])
16
- pango: wrap=([#<Pango::Layout::WrapMode word-char>])
17
- pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
18
- pango: alignment=([#<Pango::Layout::Alignment left>])
19
- pango: justify=([false])
20
- cairo: move_to([0, 0])
21
- cairo: move_to([0, 0])
22
- cairo: show_pango_layout([MockDouble])
23
- cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
24
- cairo: set_source_color([:cyan])
25
- cairo: set_line_width([2.0])
26
- cairo: stroke([])
27
- pango: ellipsized?([])
28
- cairo: restore([])
29
- cairo: save([])
30
- cairo: set_source_color(["black"])
31
- cairo: translate([320, 10])
32
- cairo: rotate([0])
33
- cairo: move_to([0, 0])
34
- pango: font_description=([MockDouble])
35
- pango: text=(["Notice also the antialiasing method."])
36
- pango: width=([307200])
37
- pango: height=([204800])
38
- pango: wrap=([#<Pango::Layout::WrapMode word-char>])
39
- pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
40
- pango: alignment=([#<Pango::Layout::Alignment left>])
41
- pango: justify=([false])
42
- cairo: move_to([0, 0])
43
- cairo: move_to([0, 0])
44
- cairo: show_pango_layout([MockDouble])
45
- pango: ellipsized?([])
46
- cairo: restore([])
47
- surface: write_to_png(["_output/config_text_00.png"])
48
- cairo: antialias=(["subpixel"])
49
- cairo: save([])
50
- cairo: set_source_color(["black"])
51
- cairo: translate([10, 10])
52
- cairo: rotate([0])
53
- cairo: move_to([0, 0])
54
- pango: font_description=([MockDouble])
55
- pango: text=(["This has typographic sugar --- and ``explicit'' quotes --- but the quotes are \"dumb\""])
56
- pango: markup=(["foo"])
57
- pango: width=([307200])
58
- pango: height=([204800])
59
- pango: wrap=([#<Pango::Layout::WrapMode word-char>])
60
- pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
61
- pango: alignment=([#<Pango::Layout::Alignment left>])
62
- pango: justify=([false])
63
- cairo: move_to([0, 0])
64
- cairo: move_to([0, 0])
65
- cairo: show_pango_layout([MockDouble])
66
- cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
67
- cairo: set_source_color([:cyan])
68
- cairo: set_line_width([2.0])
69
- cairo: stroke([])
70
- pango: ellipsized?([])
71
- cairo: restore([])
72
- surface: write_to_png(["_output/config_disable_text_00.png"])
1
+ cairo: antialias=(["gray"])
2
+ cairo: save([])
3
+ cairo: set_source_color(["white"])
4
+ cairo: paint([])
5
+ cairo: restore([])
6
+ cairo: save([])
7
+ cairo: set_source_color(["black"])
8
+ cairo: translate([10, 10])
9
+ cairo: rotate([0])
10
+ cairo: move_to([0, 0])
11
+ pango: font_description=([MockDouble])
12
+ pango: text=(["\"'Yaml ain't markup', he says\""])
13
+ pango: markup=(["foo"])
14
+ pango: width=([307200])
15
+ pango: height=([204800])
16
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
17
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
18
+ pango: alignment=([#<Pango::Layout::Alignment left>])
19
+ pango: justify=([false])
20
+ cairo: move_to([0, 0])
21
+ cairo: move_to([0, 0])
22
+ cairo: show_pango_layout([MockDouble])
23
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
24
+ cairo: set_source_color([:cyan])
25
+ cairo: set_line_width([2.0])
26
+ cairo: stroke([])
27
+ pango: ellipsized?([])
28
+ cairo: restore([])
29
+ cairo: save([])
30
+ cairo: set_source_color(["black"])
31
+ cairo: translate([320, 10])
32
+ cairo: rotate([0])
33
+ cairo: move_to([0, 0])
34
+ pango: font_description=([MockDouble])
35
+ pango: text=(["Notice also the antialiasing method."])
36
+ pango: width=([307200])
37
+ pango: height=([204800])
38
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
39
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
40
+ pango: alignment=([#<Pango::Layout::Alignment left>])
41
+ pango: justify=([false])
42
+ cairo: move_to([0, 0])
43
+ cairo: move_to([0, 0])
44
+ cairo: show_pango_layout([MockDouble])
45
+ pango: ellipsized?([])
46
+ cairo: restore([])
47
+ surface: write_to_png(["_output/config_text_00.png"])
48
+ cairo: antialias=(["subpixel"])
49
+ cairo: save([])
50
+ cairo: set_source_color(["black"])
51
+ cairo: translate([10, 10])
52
+ cairo: rotate([0])
53
+ cairo: move_to([0, 0])
54
+ pango: font_description=([MockDouble])
55
+ pango: text=(["This has typographic sugar --- and ``explicit'' quotes --- but the quotes are \"dumb\""])
56
+ pango: markup=(["foo"])
57
+ pango: width=([307200])
58
+ pango: height=([204800])
59
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
60
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
61
+ pango: alignment=([#<Pango::Layout::Alignment left>])
62
+ pango: justify=([false])
63
+ cairo: move_to([0, 0])
64
+ cairo: move_to([0, 0])
65
+ cairo: show_pango_layout([MockDouble])
66
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
67
+ cairo: set_source_color([:cyan])
68
+ cairo: set_line_width([2.0])
69
+ cairo: stroke([])
70
+ pango: ellipsized?([])
71
+ cairo: restore([])
72
+ surface: write_to_png(["_output/config_disable_text_00.png"])
@@ -55,3 +55,4 @@ cairo: set_source([MockDouble, 0, 0])
55
55
  cairo: paint([])
56
56
  cairo: reset_clip([])
57
57
  cairo: translate([-75, -75])
58
+ surface: finish([])
@@ -198,6 +198,85 @@ cairo: set_line_width([2.0])
198
198
  cairo: stroke([])
199
199
  pango: ellipsized?([])
200
200
  cairo: restore([])
201
+ cairo: save([])
202
+ cairo: set_source_color(["black"])
203
+ cairo: translate([0, 640])
204
+ cairo: rotate([0])
205
+ cairo: move_to([0, 0])
206
+ pango: font_description=([MockDouble])
207
+ pango: text=([":tool:"])
208
+ pango: markup=(["foo"])
209
+ pango: width=([184320])
210
+ pango: height=([51200])
211
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
212
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
213
+ pango: alignment=([#<Pango::Layout::Alignment center>])
214
+ pango: justify=([false])
215
+ pango: markup=(["foo"])
216
+ cairo: move_to([0, 0.0])
217
+ cairo: move_to([0, 0.0])
218
+ cairo: show_pango_layout([MockDouble])
219
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
220
+ cairo: set_source_color([:red])
221
+ cairo: set_line_width([2.0])
222
+ cairo: stroke([])
223
+ pango: ellipsized?([])
224
+ cairo: restore([])
225
+ cairo: save([])
226
+ cairo: set_source_color(["black"])
227
+ cairo: translate([200, 640])
228
+ cairo: rotate([0])
229
+ cairo: move_to([0, 0])
230
+ pango: font_description=([MockDouble])
231
+ pango: text=([":purse:"])
232
+ pango: markup=(["foo"])
233
+ pango: width=([184320])
234
+ pango: height=([51200])
235
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
236
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
237
+ pango: alignment=([#<Pango::Layout::Alignment center>])
238
+ pango: justify=([false])
239
+ pango: markup=(["foo"])
240
+ cairo: move_to([0, 0.0])
241
+ cairo: move_to([0, 0.0])
242
+ cairo: show_pango_layout([MockDouble])
243
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
244
+ cairo: set_source_color([:red])
245
+ cairo: set_line_width([2.0])
246
+ cairo: stroke([])
247
+ pango: ellipsized?([])
248
+ cairo: restore([])
249
+ cairo: save([])
250
+ cairo: set_source_color(["red"])
251
+ cairo: translate([0, 700])
252
+ cairo: rotate([0])
253
+ cairo: move_to([0, 0])
254
+ pango: font_description=([MockDouble])
255
+ pango: text=([":tool: Death to Nemesis bug 103!! :purse:"])
256
+ pango: width=([389120])
257
+ pango: height=([153600])
258
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
259
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
260
+ pango: alignment=([#<Pango::Layout::Alignment center>])
261
+ pango: justify=([false])
262
+ pango: markup=([":tool: Death to Nemesis bug 103!! :purse:"])
263
+ cairo: move_to([0, 0.0])
264
+ cairo: move_to([0, 0.0])
265
+ cairo: show_pango_layout([MockDouble])
266
+ cairo: pango_layout_path([MockDouble])
267
+ cairo: set_source_color(["blue"])
268
+ cairo: set_line_width([2])
269
+ cairo: set_line_join([0])
270
+ cairo: set_line_cap([0])
271
+ cairo: set_dash([[3.0, 3.0]])
272
+ cairo: stroke([])
273
+ cairo: set_source_color(["red"])
274
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
275
+ cairo: set_source_color([:magenta])
276
+ cairo: set_line_width([2.0])
277
+ cairo: stroke([])
278
+ pango: ellipsized?([])
279
+ cairo: restore([])
201
280
  surface: write_to_png(["_output/embed_00.png"])
202
281
  cairo: antialias=(["subpixel"])
203
282
  cairo: antialias=(["subpixel"])