squib 0.4.0 → 0.5.0

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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.travis.yml +5 -4
  4. data/CHANGELOG.md +12 -2
  5. data/Gemfile +2 -0
  6. data/README.md +177 -31
  7. data/Rakefile +1 -0
  8. data/lib/squib/api/shapes.rb +25 -0
  9. data/lib/squib/api/text.rb +9 -3
  10. data/lib/squib/api/text_embed.rb +64 -0
  11. data/lib/squib/args/typographer.rb +112 -0
  12. data/lib/squib/args/unit_conversion.rb +4 -0
  13. data/lib/squib/card.rb +2 -1
  14. data/lib/squib/constants.rb +32 -1
  15. data/lib/squib/deck.rb +6 -1
  16. data/lib/squib/graphics/cairo_context_wrapper.rb +9 -1
  17. data/lib/squib/graphics/save_doc.rb +1 -1
  18. data/lib/squib/graphics/shapes.rb +16 -0
  19. data/lib/squib/graphics/showcase.rb +2 -0
  20. data/lib/squib/graphics/text.rb +105 -23
  21. data/lib/squib/project_template/config.yml +13 -0
  22. data/lib/squib/version.rb +1 -1
  23. data/samples/config_disable_quotes.yml +3 -0
  24. data/samples/config_text_markup.rb +20 -0
  25. data/samples/config_text_markup.yml +9 -0
  26. data/samples/draw_shapes.rb +5 -0
  27. data/samples/embed_text.rb +90 -0
  28. data/samples/text_options.rb +21 -7
  29. data/spec/api/api_text_spec.rb +3 -3
  30. data/spec/args/typographer_spec.rb +71 -0
  31. data/spec/data/samples/autoscale_font.rb.txt +9 -9
  32. data/spec/data/samples/basic.rb.txt +12 -12
  33. data/spec/data/samples/config_text_markup.rb.txt +75 -0
  34. data/spec/data/samples/csv_import.rb.txt +12 -12
  35. data/spec/data/samples/custom_config.rb.txt +2 -6
  36. data/spec/data/samples/draw_shapes.rb.txt +11 -0
  37. data/spec/data/samples/embed_text.rb.txt +295 -0
  38. data/spec/data/samples/excel.rb.txt +18 -18
  39. data/spec/data/samples/gradients.rb.txt +2 -2
  40. data/spec/data/samples/hello_world.rb.txt +2 -2
  41. data/spec/data/samples/portrait-landscape.rb.txt +2 -2
  42. data/spec/data/samples/ranges.rb.txt +48 -48
  43. data/spec/data/samples/saves.rb.txt +32 -32
  44. data/spec/data/samples/showcase.rb.txt +8 -8
  45. data/spec/data/samples/text_options.rb.txt +162 -120
  46. data/spec/data/samples/tgc_proofs.rb.txt +4 -4
  47. data/spec/graphics/graphics_text_spec.rb +13 -11
  48. data/spec/samples/samples_regression_spec.rb +2 -0
  49. data/spec/spec_helper.rb +22 -5
  50. data/squib.gemspec +1 -1
  51. data/squib.sublime-project +49 -0
  52. metadata +17 -16
@@ -226,8 +226,7 @@ cairo: save([])
226
226
  cairo: set_source_color([:black])
227
227
  cairo: translate([220, 78])
228
228
  cairo: rotate([0])
229
- cairo: translate([-220, -78])
230
- cairo: move_to([220, 78])
229
+ cairo: move_to([0, 0])
231
230
  pango: font_description=([MockDouble])
232
231
  pango: text=(["1"])
233
232
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -236,6 +235,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
236
235
  pango: justify=([false])
237
236
  pango: spacing=([0])
238
237
  cairo: update_pango_layout([MockDouble])
238
+ cairo: move_to([0, 0])
239
239
  cairo: update_pango_layout([MockDouble])
240
240
  cairo: show_pango_layout([MockDouble])
241
241
  cairo: restore([])
@@ -243,8 +243,7 @@ cairo: save([])
243
243
  cairo: set_source_color([:black])
244
244
  cairo: translate([220, 78])
245
245
  cairo: rotate([0])
246
- cairo: translate([-220, -78])
247
- cairo: move_to([220, 78])
246
+ cairo: move_to([0, 0])
248
247
  pango: font_description=([MockDouble])
249
248
  pango: text=(["2"])
250
249
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -253,6 +252,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
253
252
  pango: justify=([false])
254
253
  pango: spacing=([0])
255
254
  cairo: update_pango_layout([MockDouble])
255
+ cairo: move_to([0, 0])
256
256
  cairo: update_pango_layout([MockDouble])
257
257
  cairo: show_pango_layout([MockDouble])
258
258
  cairo: restore([])
@@ -260,8 +260,7 @@ cairo: save([])
260
260
  cairo: set_source_color([:black])
261
261
  cairo: translate([220, 78])
262
262
  cairo: rotate([0])
263
- cairo: translate([-220, -78])
264
- cairo: move_to([220, 78])
263
+ cairo: move_to([0, 0])
265
264
  pango: font_description=([MockDouble])
266
265
  pango: text=(["3"])
267
266
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -270,6 +269,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
270
269
  pango: justify=([false])
271
270
  pango: spacing=([0])
272
271
  cairo: update_pango_layout([MockDouble])
272
+ cairo: move_to([0, 0])
273
273
  cairo: update_pango_layout([MockDouble])
274
274
  cairo: show_pango_layout([MockDouble])
275
275
  cairo: restore([])
@@ -277,8 +277,7 @@ cairo: save([])
277
277
  cairo: set_source_color([:black])
278
278
  cairo: translate([220, 78])
279
279
  cairo: rotate([0])
280
- cairo: translate([-220, -78])
281
- cairo: move_to([220, 78])
280
+ cairo: move_to([0, 0])
282
281
  pango: font_description=([MockDouble])
283
282
  pango: text=(["4"])
284
283
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -287,6 +286,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
287
286
  pango: justify=([false])
288
287
  pango: spacing=([0])
289
288
  cairo: update_pango_layout([MockDouble])
289
+ cairo: move_to([0, 0])
290
290
  cairo: update_pango_layout([MockDouble])
291
291
  cairo: show_pango_layout([MockDouble])
292
292
  cairo: restore([])
@@ -294,8 +294,7 @@ cairo: save([])
294
294
  cairo: set_source_color([:black])
295
295
  cairo: translate([220, 78])
296
296
  cairo: rotate([0])
297
- cairo: translate([-220, -78])
298
- cairo: move_to([220, 78])
297
+ cairo: move_to([0, 0])
299
298
  pango: font_description=([MockDouble])
300
299
  pango: text=(["5"])
301
300
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -304,6 +303,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
304
303
  pango: justify=([false])
305
304
  pango: spacing=([0])
306
305
  cairo: update_pango_layout([MockDouble])
306
+ cairo: move_to([0, 0])
307
307
  cairo: update_pango_layout([MockDouble])
308
308
  cairo: show_pango_layout([MockDouble])
309
309
  cairo: restore([])
@@ -311,8 +311,7 @@ cairo: save([])
311
311
  cairo: set_source_color([:black])
312
312
  cairo: translate([220, 78])
313
313
  cairo: rotate([0])
314
- cairo: translate([-220, -78])
315
- cairo: move_to([220, 78])
314
+ cairo: move_to([0, 0])
316
315
  pango: font_description=([MockDouble])
317
316
  pango: text=(["6"])
318
317
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -321,6 +320,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
321
320
  pango: justify=([false])
322
321
  pango: spacing=([0])
323
322
  cairo: update_pango_layout([MockDouble])
323
+ cairo: move_to([0, 0])
324
324
  cairo: update_pango_layout([MockDouble])
325
325
  cairo: show_pango_layout([MockDouble])
326
326
  cairo: restore([])
@@ -328,8 +328,7 @@ cairo: save([])
328
328
  cairo: set_source_color([:black])
329
329
  cairo: translate([220, 78])
330
330
  cairo: rotate([0])
331
- cairo: translate([-220, -78])
332
- cairo: move_to([220, 78])
331
+ cairo: move_to([0, 0])
333
332
  pango: font_description=([MockDouble])
334
333
  pango: text=(["7"])
335
334
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -338,6 +337,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
338
337
  pango: justify=([false])
339
338
  pango: spacing=([0])
340
339
  cairo: update_pango_layout([MockDouble])
340
+ cairo: move_to([0, 0])
341
341
  cairo: update_pango_layout([MockDouble])
342
342
  cairo: show_pango_layout([MockDouble])
343
343
  cairo: restore([])
@@ -345,8 +345,7 @@ cairo: save([])
345
345
  cairo: set_source_color([:black])
346
346
  cairo: translate([220, 78])
347
347
  cairo: rotate([0])
348
- cairo: translate([-220, -78])
349
- cairo: move_to([220, 78])
348
+ cairo: move_to([0, 0])
350
349
  pango: font_description=([MockDouble])
351
350
  pango: text=(["8"])
352
351
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -355,6 +354,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
355
354
  pango: justify=([false])
356
355
  pango: spacing=([0])
357
356
  cairo: update_pango_layout([MockDouble])
357
+ cairo: move_to([0, 0])
358
358
  cairo: update_pango_layout([MockDouble])
359
359
  cairo: show_pango_layout([MockDouble])
360
360
  cairo: restore([])
@@ -362,8 +362,7 @@ cairo: save([])
362
362
  cairo: set_source_color([:black])
363
363
  cairo: translate([220, 78])
364
364
  cairo: rotate([0])
365
- cairo: translate([-220, -78])
366
- cairo: move_to([220, 78])
365
+ cairo: move_to([0, 0])
367
366
  pango: font_description=([MockDouble])
368
367
  pango: text=(["9"])
369
368
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -372,6 +371,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
372
371
  pango: justify=([false])
373
372
  pango: spacing=([0])
374
373
  cairo: update_pango_layout([MockDouble])
374
+ cairo: move_to([0, 0])
375
375
  cairo: update_pango_layout([MockDouble])
376
376
  cairo: show_pango_layout([MockDouble])
377
377
  cairo: restore([])
@@ -379,8 +379,7 @@ cairo: save([])
379
379
  cairo: set_source_color([:black])
380
380
  cairo: translate([220, 78])
381
381
  cairo: rotate([0])
382
- cairo: translate([-220, -78])
383
- cairo: move_to([220, 78])
382
+ cairo: move_to([0, 0])
384
383
  pango: font_description=([MockDouble])
385
384
  pango: text=(["10"])
386
385
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -389,6 +388,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
389
388
  pango: justify=([false])
390
389
  pango: spacing=([0])
391
390
  cairo: update_pango_layout([MockDouble])
391
+ cairo: move_to([0, 0])
392
392
  cairo: update_pango_layout([MockDouble])
393
393
  cairo: show_pango_layout([MockDouble])
394
394
  cairo: restore([])
@@ -396,8 +396,7 @@ cairo: save([])
396
396
  cairo: set_source_color([:black])
397
397
  cairo: translate([220, 78])
398
398
  cairo: rotate([0])
399
- cairo: translate([-220, -78])
400
- cairo: move_to([220, 78])
399
+ cairo: move_to([0, 0])
401
400
  pango: font_description=([MockDouble])
402
401
  pango: text=(["11"])
403
402
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -406,6 +405,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
406
405
  pango: justify=([false])
407
406
  pango: spacing=([0])
408
407
  cairo: update_pango_layout([MockDouble])
408
+ cairo: move_to([0, 0])
409
409
  cairo: update_pango_layout([MockDouble])
410
410
  cairo: show_pango_layout([MockDouble])
411
411
  cairo: restore([])
@@ -413,8 +413,7 @@ cairo: save([])
413
413
  cairo: set_source_color([:black])
414
414
  cairo: translate([220, 78])
415
415
  cairo: rotate([0])
416
- cairo: translate([-220, -78])
417
- cairo: move_to([220, 78])
416
+ cairo: move_to([0, 0])
418
417
  pango: font_description=([MockDouble])
419
418
  pango: text=(["12"])
420
419
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -423,6 +422,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
423
422
  pango: justify=([false])
424
423
  pango: spacing=([0])
425
424
  cairo: update_pango_layout([MockDouble])
425
+ cairo: move_to([0, 0])
426
426
  cairo: update_pango_layout([MockDouble])
427
427
  cairo: show_pango_layout([MockDouble])
428
428
  cairo: restore([])
@@ -430,8 +430,7 @@ cairo: save([])
430
430
  cairo: set_source_color([:black])
431
431
  cairo: translate([220, 78])
432
432
  cairo: rotate([0])
433
- cairo: translate([-220, -78])
434
- cairo: move_to([220, 78])
433
+ cairo: move_to([0, 0])
435
434
  pango: font_description=([MockDouble])
436
435
  pango: text=(["13"])
437
436
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -440,6 +439,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
440
439
  pango: justify=([false])
441
440
  pango: spacing=([0])
442
441
  cairo: update_pango_layout([MockDouble])
442
+ cairo: move_to([0, 0])
443
443
  cairo: update_pango_layout([MockDouble])
444
444
  cairo: show_pango_layout([MockDouble])
445
445
  cairo: restore([])
@@ -447,8 +447,7 @@ cairo: save([])
447
447
  cairo: set_source_color([:black])
448
448
  cairo: translate([220, 78])
449
449
  cairo: rotate([0])
450
- cairo: translate([-220, -78])
451
- cairo: move_to([220, 78])
450
+ cairo: move_to([0, 0])
452
451
  pango: font_description=([MockDouble])
453
452
  pango: text=(["14"])
454
453
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -457,6 +456,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
457
456
  pango: justify=([false])
458
457
  pango: spacing=([0])
459
458
  cairo: update_pango_layout([MockDouble])
459
+ cairo: move_to([0, 0])
460
460
  cairo: update_pango_layout([MockDouble])
461
461
  cairo: show_pango_layout([MockDouble])
462
462
  cairo: restore([])
@@ -464,8 +464,7 @@ cairo: save([])
464
464
  cairo: set_source_color([:black])
465
465
  cairo: translate([220, 78])
466
466
  cairo: rotate([0])
467
- cairo: translate([-220, -78])
468
- cairo: move_to([220, 78])
467
+ cairo: move_to([0, 0])
469
468
  pango: font_description=([MockDouble])
470
469
  pango: text=(["15"])
471
470
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -474,6 +473,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
474
473
  pango: justify=([false])
475
474
  pango: spacing=([0])
476
475
  cairo: update_pango_layout([MockDouble])
476
+ cairo: move_to([0, 0])
477
477
  cairo: update_pango_layout([MockDouble])
478
478
  cairo: show_pango_layout([MockDouble])
479
479
  cairo: restore([])
@@ -481,8 +481,7 @@ cairo: save([])
481
481
  cairo: set_source_color([:black])
482
482
  cairo: translate([220, 78])
483
483
  cairo: rotate([0])
484
- cairo: translate([-220, -78])
485
- cairo: move_to([220, 78])
484
+ cairo: move_to([0, 0])
486
485
  pango: font_description=([MockDouble])
487
486
  pango: text=(["16"])
488
487
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -491,6 +490,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
491
490
  pango: justify=([false])
492
491
  pango: spacing=([0])
493
492
  cairo: update_pango_layout([MockDouble])
493
+ cairo: move_to([0, 0])
494
494
  cairo: update_pango_layout([MockDouble])
495
495
  cairo: show_pango_layout([MockDouble])
496
496
  cairo: restore([])
@@ -58,8 +58,7 @@ cairo: save([])
58
58
  cairo: set_source_color([:black])
59
59
  cairo: translate([78, 78])
60
60
  cairo: rotate([0])
61
- cairo: translate([-78, -78])
62
- cairo: move_to([78, 78])
61
+ cairo: move_to([0, 0])
63
62
  pango: font_description=([MockDouble])
64
63
  pango: text=(["Grifter"])
65
64
  pango: width=([691200.0])
@@ -69,6 +68,7 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
69
68
  pango: justify=([false])
70
69
  pango: spacing=([0])
71
70
  cairo: update_pango_layout([MockDouble])
71
+ cairo: move_to([0, 0])
72
72
  cairo: update_pango_layout([MockDouble])
73
73
  cairo: show_pango_layout([MockDouble])
74
74
  cairo: restore([])
@@ -76,8 +76,7 @@ cairo: save([])
76
76
  cairo: set_source_color([:black])
77
77
  cairo: translate([78, 78])
78
78
  cairo: rotate([0])
79
- cairo: translate([-78, -78])
80
- cairo: move_to([78, 78])
79
+ cairo: move_to([0, 0])
81
80
  pango: font_description=([MockDouble])
82
81
  pango: text=(["Thief"])
83
82
  pango: width=([691200.0])
@@ -87,6 +86,7 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
87
86
  pango: justify=([false])
88
87
  pango: spacing=([0])
89
88
  cairo: update_pango_layout([MockDouble])
89
+ cairo: move_to([0, 0])
90
90
  cairo: update_pango_layout([MockDouble])
91
91
  cairo: show_pango_layout([MockDouble])
92
92
  cairo: restore([])
@@ -94,8 +94,7 @@ cairo: save([])
94
94
  cairo: set_source_color([:black])
95
95
  cairo: translate([78, 78])
96
96
  cairo: rotate([0])
97
- cairo: translate([-78, -78])
98
- cairo: move_to([78, 78])
97
+ cairo: move_to([0, 0])
99
98
  pango: font_description=([MockDouble])
100
99
  pango: text=(["Thug"])
101
100
  pango: width=([691200.0])
@@ -105,6 +104,7 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
105
104
  pango: justify=([false])
106
105
  pango: spacing=([0])
107
106
  cairo: update_pango_layout([MockDouble])
107
+ cairo: move_to([0, 0])
108
108
  cairo: update_pango_layout([MockDouble])
109
109
  cairo: show_pango_layout([MockDouble])
110
110
  cairo: restore([])
@@ -112,8 +112,7 @@ cairo: save([])
112
112
  cairo: set_source_color([:black])
113
113
  cairo: translate([78, 78])
114
114
  cairo: rotate([0])
115
- cairo: translate([-78, -78])
116
- cairo: move_to([78, 78])
115
+ cairo: move_to([0, 0])
117
116
  pango: font_description=([MockDouble])
118
117
  pango: text=(["Kingpin"])
119
118
  pango: width=([691200.0])
@@ -123,6 +122,7 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
123
122
  pango: justify=([false])
124
123
  pango: spacing=([0])
125
124
  cairo: update_pango_layout([MockDouble])
125
+ cairo: move_to([0, 0])
126
126
  cairo: update_pango_layout([MockDouble])
127
127
  cairo: show_pango_layout([MockDouble])
128
128
  cairo: restore([])
@@ -71,8 +71,7 @@ cairo: save([])
71
71
  cairo: set_source_color([:black])
72
72
  cairo: translate([250, 55])
73
73
  cairo: rotate([0])
74
- cairo: translate([-250, -55])
75
- cairo: move_to([250, 55])
74
+ cairo: move_to([0, 0])
76
75
  pango: font_description=([MockDouble])
77
76
  pango: text=(["Thief"])
78
77
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -81,6 +80,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
81
80
  pango: justify=([false])
82
81
  pango: spacing=([0])
83
82
  cairo: update_pango_layout([MockDouble])
83
+ cairo: move_to([0, 0])
84
84
  cairo: update_pango_layout([MockDouble])
85
85
  cairo: show_pango_layout([MockDouble])
86
86
  cairo: restore([])
@@ -88,8 +88,7 @@ cairo: save([])
88
88
  cairo: set_source_color([:black])
89
89
  cairo: translate([250, 55])
90
90
  cairo: rotate([0])
91
- cairo: translate([-250, -55])
92
- cairo: move_to([250, 55])
91
+ cairo: move_to([0, 0])
93
92
  pango: font_description=([MockDouble])
94
93
  pango: text=(["Grifter"])
95
94
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -98,6 +97,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
98
97
  pango: justify=([false])
99
98
  pango: spacing=([0])
100
99
  cairo: update_pango_layout([MockDouble])
100
+ cairo: move_to([0, 0])
101
101
  cairo: update_pango_layout([MockDouble])
102
102
  cairo: show_pango_layout([MockDouble])
103
103
  cairo: restore([])
@@ -105,8 +105,7 @@ cairo: save([])
105
105
  cairo: set_source_color([:black])
106
106
  cairo: translate([250, 55])
107
107
  cairo: rotate([0])
108
- cairo: translate([-250, -55])
109
- cairo: move_to([250, 55])
108
+ cairo: move_to([0, 0])
110
109
  pango: font_description=([MockDouble])
111
110
  pango: text=(["Mastermind"])
112
111
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -115,6 +114,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
115
114
  pango: justify=([false])
116
115
  pango: spacing=([0])
117
116
  cairo: update_pango_layout([MockDouble])
117
+ cairo: move_to([0, 0])
118
118
  cairo: update_pango_layout([MockDouble])
119
119
  cairo: show_pango_layout([MockDouble])
120
120
  cairo: restore([])
@@ -122,8 +122,7 @@ cairo: save([])
122
122
  cairo: set_source_color([:burnt_orange])
123
123
  cairo: translate([65, 40])
124
124
  cairo: rotate([0])
125
- cairo: translate([-65, -40])
126
- cairo: move_to([65, 40])
125
+ cairo: move_to([0, 0])
127
126
  pango: font_description=([MockDouble])
128
127
  pango: text=(["1"])
129
128
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -132,6 +131,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
132
131
  pango: justify=([false])
133
132
  pango: spacing=([0])
134
133
  cairo: update_pango_layout([MockDouble])
134
+ cairo: move_to([0, 0])
135
135
  cairo: update_pango_layout([MockDouble])
136
136
  cairo: show_pango_layout([MockDouble])
137
137
  cairo: restore([])
@@ -139,8 +139,7 @@ cairo: save([])
139
139
  cairo: set_source_color([:burnt_orange])
140
140
  cairo: translate([65, 40])
141
141
  cairo: rotate([0])
142
- cairo: translate([-65, -40])
143
- cairo: move_to([65, 40])
142
+ cairo: move_to([0, 0])
144
143
  pango: font_description=([MockDouble])
145
144
  pango: text=(["2"])
146
145
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -149,6 +148,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
149
148
  pango: justify=([false])
150
149
  pango: spacing=([0])
151
150
  cairo: update_pango_layout([MockDouble])
151
+ cairo: move_to([0, 0])
152
152
  cairo: update_pango_layout([MockDouble])
153
153
  cairo: show_pango_layout([MockDouble])
154
154
  cairo: restore([])
@@ -156,8 +156,7 @@ cairo: save([])
156
156
  cairo: set_source_color([:burnt_orange])
157
157
  cairo: translate([65, 40])
158
158
  cairo: rotate([0])
159
- cairo: translate([-65, -40])
160
- cairo: move_to([65, 40])
159
+ cairo: move_to([0, 0])
161
160
  pango: font_description=([MockDouble])
162
161
  pango: text=(["3"])
163
162
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -166,6 +165,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
166
165
  pango: justify=([false])
167
166
  pango: spacing=([0])
168
167
  cairo: update_pango_layout([MockDouble])
168
+ cairo: move_to([0, 0])
169
169
  cairo: update_pango_layout([MockDouble])
170
170
  cairo: show_pango_layout([MockDouble])
171
171
  cairo: restore([])
@@ -173,8 +173,7 @@ cairo: save([])
173
173
  cairo: set_source_color([:black])
174
174
  cairo: translate([65, 200])
175
175
  cairo: rotate([0])
176
- cairo: translate([-65, -200])
177
- cairo: move_to([65, 200])
176
+ cairo: move_to([0, 0])
178
177
  pango: font_description=([MockDouble])
179
178
  pango: text=(["Font strings are expressive!"])
180
179
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -183,6 +182,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
183
182
  pango: justify=([false])
184
183
  pango: spacing=([0])
185
184
  cairo: update_pango_layout([MockDouble])
185
+ cairo: move_to([0, 0])
186
186
  cairo: update_pango_layout([MockDouble])
187
187
  cairo: show_pango_layout([MockDouble])
188
188
  cairo: restore([])
@@ -190,8 +190,7 @@ cairo: save([])
190
190
  cairo: set_source_color([:black])
191
191
  cairo: translate([65, 200])
192
192
  cairo: rotate([0])
193
- cairo: translate([-65, -200])
194
- cairo: move_to([65, 200])
193
+ cairo: move_to([0, 0])
195
194
  pango: font_description=([MockDouble])
196
195
  pango: text=(["Font strings are expressive!"])
197
196
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -200,6 +199,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
200
199
  pango: justify=([false])
201
200
  pango: spacing=([0])
202
201
  cairo: update_pango_layout([MockDouble])
202
+ cairo: move_to([0, 0])
203
203
  cairo: update_pango_layout([MockDouble])
204
204
  cairo: show_pango_layout([MockDouble])
205
205
  cairo: restore([])
@@ -207,8 +207,7 @@ cairo: save([])
207
207
  cairo: set_source_color([:black])
208
208
  cairo: translate([65, 200])
209
209
  cairo: rotate([0])
210
- cairo: translate([-65, -200])
211
- cairo: move_to([65, 200])
210
+ cairo: move_to([0, 0])
212
211
  pango: font_description=([MockDouble])
213
212
  pango: text=(["Font strings are expressive!"])
214
213
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -217,6 +216,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
217
216
  pango: justify=([false])
218
217
  pango: spacing=([0])
219
218
  cairo: update_pango_layout([MockDouble])
219
+ cairo: move_to([0, 0])
220
220
  cairo: update_pango_layout([MockDouble])
221
221
  cairo: show_pango_layout([MockDouble])
222
222
  cairo: restore([])
@@ -224,8 +224,7 @@ cairo: save([])
224
224
  cairo: set_source_color([:black])
225
225
  cairo: translate([65, 300])
226
226
  cairo: rotate([0])
227
- cairo: translate([-65, -300])
228
- cairo: move_to([65, 300])
227
+ cairo: move_to([0, 0])
229
228
  pango: font_description=([MockDouble])
230
229
  pango: text=(["Font strings are expressive!"])
231
230
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -234,6 +233,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
234
233
  pango: justify=([false])
235
234
  pango: spacing=([0])
236
235
  cairo: update_pango_layout([MockDouble])
236
+ cairo: move_to([0, 0])
237
237
  cairo: update_pango_layout([MockDouble])
238
238
  cairo: show_pango_layout([MockDouble])
239
239
  cairo: restore([])
@@ -241,8 +241,7 @@ cairo: save([])
241
241
  cairo: set_source_color([:black])
242
242
  cairo: translate([65, 300])
243
243
  cairo: rotate([0])
244
- cairo: translate([-65, -300])
245
- cairo: move_to([65, 300])
244
+ cairo: move_to([0, 0])
246
245
  pango: font_description=([MockDouble])
247
246
  pango: text=(["Font strings are expressive!"])
248
247
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -251,6 +250,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
251
250
  pango: justify=([false])
252
251
  pango: spacing=([0])
253
252
  cairo: update_pango_layout([MockDouble])
253
+ cairo: move_to([0, 0])
254
254
  cairo: update_pango_layout([MockDouble])
255
255
  cairo: show_pango_layout([MockDouble])
256
256
  cairo: restore([])
@@ -258,8 +258,7 @@ cairo: save([])
258
258
  cairo: set_source_color([:black])
259
259
  cairo: translate([65, 300])
260
260
  cairo: rotate([0])
261
- cairo: translate([-65, -300])
262
- cairo: move_to([65, 300])
261
+ cairo: move_to([0, 0])
263
262
  pango: font_description=([MockDouble])
264
263
  pango: text=(["Font strings are expressive!"])
265
264
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -268,6 +267,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
268
267
  pango: justify=([false])
269
268
  pango: spacing=([0])
270
269
  cairo: update_pango_layout([MockDouble])
270
+ cairo: move_to([0, 0])
271
271
  cairo: update_pango_layout([MockDouble])
272
272
  cairo: show_pango_layout([MockDouble])
273
273
  cairo: restore([])
@@ -275,8 +275,7 @@ cairo: save([])
275
275
  cairo: set_source_color([:black])
276
276
  cairo: translate([65, 350])
277
277
  cairo: rotate([0])
278
- cairo: translate([-65, -350])
279
- cairo: move_to([65, 350])
278
+ cairo: move_to([0, 0])
280
279
  pango font: size=([16384])
281
280
  pango: font_description=([MockDouble])
282
281
  pango: text=(["Font string sizes can be overridden per card."])
@@ -286,6 +285,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
286
285
  pango: justify=([false])
287
286
  pango: spacing=([0])
288
287
  cairo: update_pango_layout([MockDouble])
288
+ cairo: move_to([0, 0])
289
289
  cairo: update_pango_layout([MockDouble])
290
290
  cairo: show_pango_layout([MockDouble])
291
291
  cairo: restore([])
@@ -293,8 +293,7 @@ cairo: save([])
293
293
  cairo: set_source_color([:black])
294
294
  cairo: translate([65, 350])
295
295
  cairo: rotate([0])
296
- cairo: translate([-65, -350])
297
- cairo: move_to([65, 350])
296
+ cairo: move_to([0, 0])
298
297
  pango font: size=([20480])
299
298
  pango: font_description=([MockDouble])
300
299
  pango: text=(["Font string sizes can be overridden per card."])
@@ -304,6 +303,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
304
303
  pango: justify=([false])
305
304
  pango: spacing=([0])
306
305
  cairo: update_pango_layout([MockDouble])
306
+ cairo: move_to([0, 0])
307
307
  cairo: update_pango_layout([MockDouble])
308
308
  cairo: show_pango_layout([MockDouble])
309
309
  cairo: restore([])
@@ -311,8 +311,7 @@ cairo: save([])
311
311
  cairo: set_source_color([:black])
312
312
  cairo: translate([65, 350])
313
313
  cairo: rotate([0])
314
- cairo: translate([-65, -350])
315
- cairo: move_to([65, 350])
314
+ cairo: move_to([0, 0])
316
315
  pango font: size=([24576])
317
316
  pango: font_description=([MockDouble])
318
317
  pango: text=(["Font string sizes can be overridden per card."])
@@ -322,6 +321,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
322
321
  pango: justify=([false])
323
322
  pango: spacing=([0])
324
323
  cairo: update_pango_layout([MockDouble])
324
+ cairo: move_to([0, 0])
325
325
  cairo: update_pango_layout([MockDouble])
326
326
  cairo: show_pango_layout([MockDouble])
327
327
  cairo: restore([])
@@ -329,10 +329,9 @@ cairo: save([])
329
329
  cairo: set_source_color([:black])
330
330
  cairo: translate([65, 400])
331
331
  cairo: rotate([0])
332
- cairo: translate([-65, -400])
333
- cairo: move_to([65, 400])
332
+ cairo: move_to([0, 0])
334
333
  pango: font_description=([MockDouble])
335
- pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, and has a red hint"])
334
+ pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, has a red hint, and \"smart quotes\""])
336
335
  pango: width=([307200])
337
336
  pango: height=([128000])
338
337
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -341,9 +340,10 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
341
340
  pango: justify=([false])
342
341
  pango: spacing=([0])
343
342
  cairo: update_pango_layout([MockDouble])
343
+ cairo: move_to([0, 0.0])
344
344
  cairo: update_pango_layout([MockDouble])
345
345
  cairo: show_pango_layout([MockDouble])
346
- cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
346
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
347
347
  cairo: set_source_color([:red])
348
348
  cairo: set_line_width([2.0])
349
349
  cairo: stroke([])
@@ -352,10 +352,9 @@ cairo: save([])
352
352
  cairo: set_source_color([:black])
353
353
  cairo: translate([65, 400])
354
354
  cairo: rotate([0])
355
- cairo: translate([-65, -400])
356
- cairo: move_to([65, 400])
355
+ cairo: move_to([0, 0])
357
356
  pango: font_description=([MockDouble])
358
- pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, and has a red hint"])
357
+ pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, has a red hint, and \"smart quotes\""])
359
358
  pango: width=([307200])
360
359
  pango: height=([128000])
361
360
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -364,9 +363,10 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
364
363
  pango: justify=([false])
365
364
  pango: spacing=([0])
366
365
  cairo: update_pango_layout([MockDouble])
366
+ cairo: move_to([0, 0.0])
367
367
  cairo: update_pango_layout([MockDouble])
368
368
  cairo: show_pango_layout([MockDouble])
369
- cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
369
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
370
370
  cairo: set_source_color([:red])
371
371
  cairo: set_line_width([2.0])
372
372
  cairo: stroke([])
@@ -375,10 +375,9 @@ cairo: save([])
375
375
  cairo: set_source_color([:black])
376
376
  cairo: translate([65, 400])
377
377
  cairo: rotate([0])
378
- cairo: translate([-65, -400])
379
- cairo: move_to([65, 400])
378
+ cairo: move_to([0, 0])
380
379
  pango: font_description=([MockDouble])
381
- pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, and has a red hint"])
380
+ pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, has a red hint, and \"smart quotes\""])
382
381
  pango: width=([307200])
383
382
  pango: height=([128000])
384
383
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -387,9 +386,10 @@ pango: alignment=([#<Pango::Layout::Alignment center>])
387
386
  pango: justify=([false])
388
387
  pango: spacing=([0])
389
388
  cairo: update_pango_layout([MockDouble])
389
+ cairo: move_to([0, 0.0])
390
390
  cairo: update_pango_layout([MockDouble])
391
391
  cairo: show_pango_layout([MockDouble])
392
- cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
392
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
393
393
  cairo: set_source_color([:red])
394
394
  cairo: set_line_width([2.0])
395
395
  cairo: stroke([])
@@ -398,8 +398,7 @@ cairo: save([])
398
398
  cairo: set_source_color([:black])
399
399
  cairo: translate([65, 550])
400
400
  cairo: rotate([0])
401
- cairo: translate([-65, -550])
402
- cairo: move_to([65, 550])
401
+ cairo: move_to([0, 0])
403
402
  pango font: size=([16384])
404
403
  pango: font_description=([MockDouble])
405
404
  pango: text=(["Ink extent return value"])
@@ -409,6 +408,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
409
408
  pango: justify=([false])
410
409
  pango: spacing=([0])
411
410
  cairo: update_pango_layout([MockDouble])
411
+ cairo: move_to([0, 0])
412
412
  cairo: update_pango_layout([MockDouble])
413
413
  cairo: show_pango_layout([MockDouble])
414
414
  cairo: restore([])
@@ -416,8 +416,7 @@ cairo: save([])
416
416
  cairo: set_source_color([:black])
417
417
  cairo: translate([65, 550])
418
418
  cairo: rotate([0])
419
- cairo: translate([-65, -550])
420
- cairo: move_to([65, 550])
419
+ cairo: move_to([0, 0])
421
420
  pango font: size=([20480])
422
421
  pango: font_description=([MockDouble])
423
422
  pango: text=(["Ink extent return value"])
@@ -427,6 +426,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
427
426
  pango: justify=([false])
428
427
  pango: spacing=([0])
429
428
  cairo: update_pango_layout([MockDouble])
429
+ cairo: move_to([0, 0])
430
430
  cairo: update_pango_layout([MockDouble])
431
431
  cairo: show_pango_layout([MockDouble])
432
432
  cairo: restore([])
@@ -434,8 +434,7 @@ cairo: save([])
434
434
  cairo: set_source_color([:black])
435
435
  cairo: translate([65, 550])
436
436
  cairo: rotate([0])
437
- cairo: translate([-65, -550])
438
- cairo: move_to([65, 550])
437
+ cairo: move_to([0, 0])
439
438
  pango font: size=([24576])
440
439
  pango: font_description=([MockDouble])
441
440
  pango: text=(["Ink extent return value"])
@@ -445,6 +444,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
445
444
  pango: justify=([false])
446
445
  pango: spacing=([0])
447
446
  cairo: update_pango_layout([MockDouble])
447
+ cairo: move_to([0, 0])
448
448
  cairo: update_pango_layout([MockDouble])
449
449
  cairo: show_pango_layout([MockDouble])
450
450
  cairo: restore([])
@@ -479,8 +479,7 @@ cairo: save([])
479
479
  cairo: set_source_color([:black])
480
480
  cairo: translate([450, 400])
481
481
  cairo: rotate([0])
482
- cairo: translate([-450, -400])
483
- cairo: move_to([450, 400])
482
+ cairo: move_to([0, 0])
484
483
  pango: font_description=([MockDouble])
485
484
  pango: text=(["Ellipsization!\nThe ultimate question of life, the universe, and everything to life and everything is 42"])
486
485
  pango: width=([286720])
@@ -491,9 +490,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
491
490
  pango: justify=([false])
492
491
  pango: spacing=([0])
493
492
  cairo: update_pango_layout([MockDouble])
493
+ cairo: move_to([0, 0])
494
494
  cairo: update_pango_layout([MockDouble])
495
495
  cairo: show_pango_layout([MockDouble])
496
- cairo: rounded_rectangle([450, 400, 0, 0, 0, 0])
496
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
497
497
  cairo: set_source_color([:green])
498
498
  cairo: set_line_width([2.0])
499
499
  cairo: stroke([])
@@ -502,8 +502,7 @@ cairo: save([])
502
502
  cairo: set_source_color([:black])
503
503
  cairo: translate([450, 400])
504
504
  cairo: rotate([0])
505
- cairo: translate([-450, -400])
506
- cairo: move_to([450, 400])
505
+ cairo: move_to([0, 0])
507
506
  pango: font_description=([MockDouble])
508
507
  pango: text=(["Ellipsization!\nThe ultimate question of life, the universe, and everything to life and everything is 42"])
509
508
  pango: width=([286720])
@@ -514,9 +513,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
514
513
  pango: justify=([false])
515
514
  pango: spacing=([0])
516
515
  cairo: update_pango_layout([MockDouble])
516
+ cairo: move_to([0, 0])
517
517
  cairo: update_pango_layout([MockDouble])
518
518
  cairo: show_pango_layout([MockDouble])
519
- cairo: rounded_rectangle([450, 400, 0, 0, 0, 0])
519
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
520
520
  cairo: set_source_color([:green])
521
521
  cairo: set_line_width([2.0])
522
522
  cairo: stroke([])
@@ -525,8 +525,7 @@ cairo: save([])
525
525
  cairo: set_source_color([:black])
526
526
  cairo: translate([450, 400])
527
527
  cairo: rotate([0])
528
- cairo: translate([-450, -400])
529
- cairo: move_to([450, 400])
528
+ cairo: move_to([0, 0])
530
529
  pango: font_description=([MockDouble])
531
530
  pango: text=(["Ellipsization!\nThe ultimate question of life, the universe, and everything to life and everything is 42"])
532
531
  pango: width=([286720])
@@ -537,9 +536,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
537
536
  pango: justify=([false])
538
537
  pango: spacing=([0])
539
538
  cairo: update_pango_layout([MockDouble])
539
+ cairo: move_to([0, 0])
540
540
  cairo: update_pango_layout([MockDouble])
541
541
  cairo: show_pango_layout([MockDouble])
542
- cairo: rounded_rectangle([450, 400, 0, 0, 0, 0])
542
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
543
543
  cairo: set_source_color([:green])
544
544
  cairo: set_line_width([2.0])
545
545
  cairo: stroke([])
@@ -548,8 +548,7 @@ cairo: save([])
548
548
  cairo: set_source_color([:black])
549
549
  cairo: translate([65, 625])
550
550
  cairo: rotate([0])
551
- cairo: translate([-65, -625])
552
- cairo: move_to([65, 625])
551
+ cairo: move_to([0, 0])
553
552
  pango: font_description=([MockDouble])
554
553
  pango: text=(["Text hints are also globally togglable!"])
555
554
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -558,19 +557,15 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
558
557
  pango: justify=([false])
559
558
  pango: spacing=([0])
560
559
  cairo: update_pango_layout([MockDouble])
560
+ cairo: move_to([0, 0])
561
561
  cairo: update_pango_layout([MockDouble])
562
562
  cairo: show_pango_layout([MockDouble])
563
- cairo: rounded_rectangle([65, 625, 0, 0, 0, 0])
564
- cairo: set_source_color([:cyan])
565
- cairo: set_line_width([2.0])
566
- cairo: stroke([])
567
563
  cairo: restore([])
568
564
  cairo: save([])
569
565
  cairo: set_source_color([:black])
570
566
  cairo: translate([65, 625])
571
567
  cairo: rotate([0])
572
- cairo: translate([-65, -625])
573
- cairo: move_to([65, 625])
568
+ cairo: move_to([0, 0])
574
569
  pango: font_description=([MockDouble])
575
570
  pango: text=(["Text hints are also globally togglable!"])
576
571
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -579,19 +574,15 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
579
574
  pango: justify=([false])
580
575
  pango: spacing=([0])
581
576
  cairo: update_pango_layout([MockDouble])
577
+ cairo: move_to([0, 0])
582
578
  cairo: update_pango_layout([MockDouble])
583
579
  cairo: show_pango_layout([MockDouble])
584
- cairo: rounded_rectangle([65, 625, 0, 0, 0, 0])
585
- cairo: set_source_color([:cyan])
586
- cairo: set_line_width([2.0])
587
- cairo: stroke([])
588
580
  cairo: restore([])
589
581
  cairo: save([])
590
582
  cairo: set_source_color([:black])
591
583
  cairo: translate([65, 625])
592
584
  cairo: rotate([0])
593
- cairo: translate([-65, -625])
594
- cairo: move_to([65, 625])
585
+ cairo: move_to([0, 0])
595
586
  pango: font_description=([MockDouble])
596
587
  pango: text=(["Text hints are also globally togglable!"])
597
588
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -600,19 +591,15 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
600
591
  pango: justify=([false])
601
592
  pango: spacing=([0])
602
593
  cairo: update_pango_layout([MockDouble])
594
+ cairo: move_to([0, 0])
603
595
  cairo: update_pango_layout([MockDouble])
604
596
  cairo: show_pango_layout([MockDouble])
605
- cairo: rounded_rectangle([65, 625, 0, 0, 0, 0])
606
- cairo: set_source_color([:cyan])
607
- cairo: set_line_width([2.0])
608
- cairo: stroke([])
609
597
  cairo: restore([])
610
598
  cairo: save([])
611
599
  cairo: set_source_color([:black])
612
600
  cairo: translate([565, 625])
613
601
  cairo: rotate([0])
614
- cairo: translate([-565, -625])
615
- cairo: move_to([565, 625])
602
+ cairo: move_to([0, 0])
616
603
  pango: font_description=([MockDouble])
617
604
  pango: text=(["See? No hint here."])
618
605
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -621,6 +608,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
621
608
  pango: justify=([false])
622
609
  pango: spacing=([0])
623
610
  cairo: update_pango_layout([MockDouble])
611
+ cairo: move_to([0, 0])
624
612
  cairo: update_pango_layout([MockDouble])
625
613
  cairo: show_pango_layout([MockDouble])
626
614
  cairo: restore([])
@@ -628,8 +616,7 @@ cairo: save([])
628
616
  cairo: set_source_color([:black])
629
617
  cairo: translate([565, 625])
630
618
  cairo: rotate([0])
631
- cairo: translate([-565, -625])
632
- cairo: move_to([565, 625])
619
+ cairo: move_to([0, 0])
633
620
  pango: font_description=([MockDouble])
634
621
  pango: text=(["See? No hint here."])
635
622
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -638,6 +625,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
638
625
  pango: justify=([false])
639
626
  pango: spacing=([0])
640
627
  cairo: update_pango_layout([MockDouble])
628
+ cairo: move_to([0, 0])
641
629
  cairo: update_pango_layout([MockDouble])
642
630
  cairo: show_pango_layout([MockDouble])
643
631
  cairo: restore([])
@@ -645,8 +633,7 @@ cairo: save([])
645
633
  cairo: set_source_color([:black])
646
634
  cairo: translate([565, 625])
647
635
  cairo: rotate([0])
648
- cairo: translate([-565, -625])
649
- cairo: move_to([565, 625])
636
+ cairo: move_to([0, 0])
650
637
  pango: font_description=([MockDouble])
651
638
  pango: text=(["See? No hint here."])
652
639
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -655,6 +642,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
655
642
  pango: justify=([false])
656
643
  pango: spacing=([0])
657
644
  cairo: update_pango_layout([MockDouble])
645
+ cairo: move_to([0, 0])
658
646
  cairo: update_pango_layout([MockDouble])
659
647
  cairo: show_pango_layout([MockDouble])
660
648
  cairo: restore([])
@@ -662,8 +650,7 @@ cairo: save([])
662
650
  cairo: set_source_color([:black])
663
651
  cairo: translate([565, 675])
664
652
  cairo: rotate([0.2])
665
- cairo: translate([-565, -675])
666
- cairo: move_to([565, 675])
653
+ cairo: move_to([0, 0])
667
654
  pango: font_description=([MockDouble])
668
655
  pango: text=(["Rotated"])
669
656
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -672,9 +659,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
672
659
  pango: justify=([false])
673
660
  pango: spacing=([0])
674
661
  cairo: update_pango_layout([MockDouble])
662
+ cairo: move_to([0, 0])
675
663
  cairo: update_pango_layout([MockDouble])
676
664
  cairo: show_pango_layout([MockDouble])
677
- cairo: rounded_rectangle([565, 675, 0, 0, 0, 0])
665
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
678
666
  cairo: set_source_color([:red])
679
667
  cairo: set_line_width([2.0])
680
668
  cairo: stroke([])
@@ -683,8 +671,7 @@ cairo: save([])
683
671
  cairo: set_source_color([:black])
684
672
  cairo: translate([565, 675])
685
673
  cairo: rotate([0.2])
686
- cairo: translate([-565, -675])
687
- cairo: move_to([565, 675])
674
+ cairo: move_to([0, 0])
688
675
  pango: font_description=([MockDouble])
689
676
  pango: text=(["Rotated"])
690
677
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -693,9 +680,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
693
680
  pango: justify=([false])
694
681
  pango: spacing=([0])
695
682
  cairo: update_pango_layout([MockDouble])
683
+ cairo: move_to([0, 0])
696
684
  cairo: update_pango_layout([MockDouble])
697
685
  cairo: show_pango_layout([MockDouble])
698
- cairo: rounded_rectangle([565, 675, 0, 0, 0, 0])
686
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
699
687
  cairo: set_source_color([:red])
700
688
  cairo: set_line_width([2.0])
701
689
  cairo: stroke([])
@@ -704,8 +692,7 @@ cairo: save([])
704
692
  cairo: set_source_color([:black])
705
693
  cairo: translate([565, 675])
706
694
  cairo: rotate([0.2])
707
- cairo: translate([-565, -675])
708
- cairo: move_to([565, 675])
695
+ cairo: move_to([0, 0])
709
696
  pango: font_description=([MockDouble])
710
697
  pango: text=(["Rotated"])
711
698
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -714,9 +701,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
714
701
  pango: justify=([false])
715
702
  pango: spacing=([0])
716
703
  cairo: update_pango_layout([MockDouble])
704
+ cairo: move_to([0, 0])
717
705
  cairo: update_pango_layout([MockDouble])
718
706
  cairo: show_pango_layout([MockDouble])
719
- cairo: rounded_rectangle([565, 675, 0, 0, 0, 0])
707
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
720
708
  cairo: set_source_color([:red])
721
709
  cairo: set_line_width([2.0])
722
710
  cairo: stroke([])
@@ -725,11 +713,10 @@ cairo: save([])
725
713
  cairo: set_source_color([:black])
726
714
  cairo: translate([65, 700])
727
715
  cairo: rotate([0])
728
- cairo: translate([-65, -700])
729
- cairo: move_to([65, 700])
716
+ cairo: move_to([0, 0])
730
717
  pango: font_description=([MockDouble])
731
- pango: text=(["This is left-justified text.\nWhat do you know about tweetle beetles? well... \nWhen tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle. AND... When beetles fight these battles in a bottle with their paddles and the bottle's on a poodle and the poodle's eating noodles... ...they call this a muddle puddle tweetle poodle beetle noodle bottle paddle battle."])
732
- pango: width=([691200.0])
718
+ pango: text=(["This is left-justified text, with newlines.\nWhat do you know about tweetle beetles? well... When tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle."])
719
+ pango: width=([460800.0])
733
720
  pango: height=([307200.0])
734
721
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
735
722
  pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
@@ -737,6 +724,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
737
724
  pango: justify=([true])
738
725
  pango: spacing=([0])
739
726
  cairo: update_pango_layout([MockDouble])
727
+ cairo: move_to([0, 0])
740
728
  cairo: update_pango_layout([MockDouble])
741
729
  cairo: show_pango_layout([MockDouble])
742
730
  cairo: restore([])
@@ -744,11 +732,10 @@ cairo: save([])
744
732
  cairo: set_source_color([:black])
745
733
  cairo: translate([65, 700])
746
734
  cairo: rotate([0])
747
- cairo: translate([-65, -700])
748
- cairo: move_to([65, 700])
735
+ cairo: move_to([0, 0])
749
736
  pango: font_description=([MockDouble])
750
- pango: text=(["This is left-justified text.\nWhat do you know about tweetle beetles? well... \nWhen tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle. AND... When beetles fight these battles in a bottle with their paddles and the bottle's on a poodle and the poodle's eating noodles... ...they call this a muddle puddle tweetle poodle beetle noodle bottle paddle battle."])
751
- pango: width=([691200.0])
737
+ pango: text=(["This is left-justified text, with newlines.\nWhat do you know about tweetle beetles? well... When tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle."])
738
+ pango: width=([460800.0])
752
739
  pango: height=([307200.0])
753
740
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
754
741
  pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
@@ -756,6 +743,7 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
756
743
  pango: justify=([true])
757
744
  pango: spacing=([0])
758
745
  cairo: update_pango_layout([MockDouble])
746
+ cairo: move_to([0, 0])
759
747
  cairo: update_pango_layout([MockDouble])
760
748
  cairo: show_pango_layout([MockDouble])
761
749
  cairo: restore([])
@@ -763,11 +751,10 @@ cairo: save([])
763
751
  cairo: set_source_color([:black])
764
752
  cairo: translate([65, 700])
765
753
  cairo: rotate([0])
766
- cairo: translate([-65, -700])
767
- cairo: move_to([65, 700])
754
+ cairo: move_to([0, 0])
768
755
  pango: font_description=([MockDouble])
769
- pango: text=(["This is left-justified text.\nWhat do you know about tweetle beetles? well... \nWhen tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle. AND... When beetles fight these battles in a bottle with their paddles and the bottle's on a poodle and the poodle's eating noodles... ...they call this a muddle puddle tweetle poodle beetle noodle bottle paddle battle."])
770
- pango: width=([691200.0])
756
+ pango: text=(["This is left-justified text, with newlines.\nWhat do you know about tweetle beetles? well... When tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle."])
757
+ pango: width=([460800.0])
771
758
  pango: height=([307200.0])
772
759
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
773
760
  pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
@@ -775,6 +762,64 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
775
762
  pango: justify=([true])
776
763
  pango: spacing=([0])
777
764
  cairo: update_pango_layout([MockDouble])
765
+ cairo: move_to([0, 0])
766
+ cairo: update_pango_layout([MockDouble])
767
+ cairo: show_pango_layout([MockDouble])
768
+ cairo: restore([])
769
+ cairo: save([])
770
+ cairo: set_source_color([:black])
771
+ cairo: translate([540.0, 750.0])
772
+ cairo: rotate([0])
773
+ cairo: move_to([0, 0])
774
+ pango: font_description=([MockDouble])
775
+ pango: text=(["Embedded icons! Take 1 :tool: and gain 2:health:. If Level 2, take 2 :tool:"])
776
+ pango: width=([261120.0])
777
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
778
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode none>])
779
+ pango: alignment=([#<Pango::Layout::Alignment left>])
780
+ pango: justify=([false])
781
+ pango: spacing=([0])
782
+ cairo: update_pango_layout([MockDouble])
783
+ pango: markup=(["Embedded icons! Take 1 :tool: and gain 2:health:. If Level 2, take 2 :tool:"])
784
+ cairo: move_to([0, 0])
785
+ cairo: update_pango_layout([MockDouble])
786
+ cairo: show_pango_layout([MockDouble])
787
+ cairo: restore([])
788
+ cairo: save([])
789
+ cairo: set_source_color([:black])
790
+ cairo: translate([540.0, 750.0])
791
+ cairo: rotate([0])
792
+ cairo: move_to([0, 0])
793
+ pango: font_description=([MockDouble])
794
+ pango: text=(["Embedded icons! Take 1 :tool: and gain 2:health:. If Level 2, take 2 :tool:"])
795
+ pango: width=([261120.0])
796
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
797
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode none>])
798
+ pango: alignment=([#<Pango::Layout::Alignment left>])
799
+ pango: justify=([false])
800
+ pango: spacing=([0])
801
+ cairo: update_pango_layout([MockDouble])
802
+ pango: markup=(["Embedded icons! Take 1 :tool: and gain 2:health:. If Level 2, take 2 :tool:"])
803
+ cairo: move_to([0, 0])
804
+ cairo: update_pango_layout([MockDouble])
805
+ cairo: show_pango_layout([MockDouble])
806
+ cairo: restore([])
807
+ cairo: save([])
808
+ cairo: set_source_color([:black])
809
+ cairo: translate([540.0, 750.0])
810
+ cairo: rotate([0])
811
+ cairo: move_to([0, 0])
812
+ pango: font_description=([MockDouble])
813
+ pango: text=(["Embedded icons! Take 1 :tool: and gain 2:health:. If Level 2, take 2 :tool:"])
814
+ pango: width=([261120.0])
815
+ pango: wrap=([#<Pango::Layout::WrapMode word-char>])
816
+ pango: ellipsize=([#<Pango::Layout::EllipsizeMode none>])
817
+ pango: alignment=([#<Pango::Layout::Alignment left>])
818
+ pango: justify=([false])
819
+ pango: spacing=([0])
820
+ cairo: update_pango_layout([MockDouble])
821
+ pango: markup=(["Embedded icons! Take 1 :tool: and gain 2:health:. If Level 2, take 2 :tool:"])
822
+ cairo: move_to([0, 0])
778
823
  cairo: update_pango_layout([MockDouble])
779
824
  cairo: show_pango_layout([MockDouble])
780
825
  cairo: restore([])
@@ -782,11 +827,10 @@ cairo: save([])
782
827
  cairo: set_source_color([:black])
783
828
  cairo: translate([50, 1000])
784
829
  cairo: rotate([0])
785
- cairo: translate([-50, -1000])
786
- cairo: move_to([50, 1000])
830
+ cairo: move_to([0, 0])
787
831
  pango: font_description=([MockDouble])
788
- pango: text=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
789
- pango: markup=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
832
+ pango: text=(["<b>Markup</b> is <i>quite</i> <s>'easy'</s> <span fgcolor=\"#ff0000\">awesome</span>. Can't beat those \"smart\" 'quotes', now with 10--20% more en-dashes --- and em-dashes --- with explicit ellipses too..."])
833
+ pango: markup=(["foo"])
790
834
  pango: width=([768000])
791
835
  pango: height=([102400])
792
836
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -795,10 +839,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
795
839
  pango: justify=([false])
796
840
  pango: spacing=([0])
797
841
  cairo: update_pango_layout([MockDouble])
798
- cairo: move_to([50, 1000])
842
+ cairo: move_to([0, 0.0])
799
843
  cairo: update_pango_layout([MockDouble])
800
844
  cairo: show_pango_layout([MockDouble])
801
- cairo: rounded_rectangle([50, 1000, 0, 0, 0, 0])
845
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
802
846
  cairo: set_source_color([:cyan])
803
847
  cairo: set_line_width([2.0])
804
848
  cairo: stroke([])
@@ -807,11 +851,10 @@ cairo: save([])
807
851
  cairo: set_source_color([:black])
808
852
  cairo: translate([50, 1000])
809
853
  cairo: rotate([0])
810
- cairo: translate([-50, -1000])
811
- cairo: move_to([50, 1000])
854
+ cairo: move_to([0, 0])
812
855
  pango: font_description=([MockDouble])
813
- pango: text=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
814
- pango: markup=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
856
+ pango: text=(["<b>Markup</b> is <i>quite</i> <s>'easy'</s> <span fgcolor=\"#ff0000\">awesome</span>. Can't beat those \"smart\" 'quotes', now with 10--20% more en-dashes --- and em-dashes --- with explicit ellipses too..."])
857
+ pango: markup=(["foo"])
815
858
  pango: width=([768000])
816
859
  pango: height=([102400])
817
860
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -820,10 +863,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
820
863
  pango: justify=([false])
821
864
  pango: spacing=([0])
822
865
  cairo: update_pango_layout([MockDouble])
823
- cairo: move_to([50, 1000])
866
+ cairo: move_to([0, 0.0])
824
867
  cairo: update_pango_layout([MockDouble])
825
868
  cairo: show_pango_layout([MockDouble])
826
- cairo: rounded_rectangle([50, 1000, 0, 0, 0, 0])
869
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
827
870
  cairo: set_source_color([:cyan])
828
871
  cairo: set_line_width([2.0])
829
872
  cairo: stroke([])
@@ -832,11 +875,10 @@ cairo: save([])
832
875
  cairo: set_source_color([:black])
833
876
  cairo: translate([50, 1000])
834
877
  cairo: rotate([0])
835
- cairo: translate([-50, -1000])
836
- cairo: move_to([50, 1000])
878
+ cairo: move_to([0, 0])
837
879
  pango: font_description=([MockDouble])
838
- pango: text=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
839
- pango: markup=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
880
+ pango: text=(["<b>Markup</b> is <i>quite</i> <s>'easy'</s> <span fgcolor=\"#ff0000\">awesome</span>. Can't beat those \"smart\" 'quotes', now with 10--20% more en-dashes --- and em-dashes --- with explicit ellipses too..."])
881
+ pango: markup=(["foo"])
840
882
  pango: width=([768000])
841
883
  pango: height=([102400])
842
884
  pango: wrap=([#<Pango::Layout::WrapMode word-char>])
@@ -845,10 +887,10 @@ pango: alignment=([#<Pango::Layout::Alignment left>])
845
887
  pango: justify=([false])
846
888
  pango: spacing=([0])
847
889
  cairo: update_pango_layout([MockDouble])
848
- cairo: move_to([50, 1000])
890
+ cairo: move_to([0, 0.0])
849
891
  cairo: update_pango_layout([MockDouble])
850
892
  cairo: show_pango_layout([MockDouble])
851
- cairo: rounded_rectangle([50, 1000, 0, 0, 0, 0])
893
+ cairo: rounded_rectangle([0, 0, 0, 0, 0, 0])
852
894
  cairo: set_source_color([:cyan])
853
895
  cairo: set_line_width([2.0])
854
896
  cairo: stroke([])