samples/images/_cairo_access.rb in squib-0.14.2 vs samples/images/_cairo_access.rb in squib-0.14.3.pre1

- old
+ new

@@ -1,39 +1,39 @@ -require 'squib' - -Squib::Deck.new(cards: 2) do - background color: :white - # If you really need something custom-made, the underlying cairo context - # can be accessed directly via each Squib::Card - # - # WARNING! Input validation is not done on Squib::Cards. Proceed at your own risk. - - # The recommended approach is to use Deck's Enumerable, which iterates over Squib::Cards - # I also recommend wrapping it in a Cairo save/restore, which Squib calls "use_cairo" - each do |card| - card.use_cairo do |cairo_context| - cairo_context.set_source_color(:blue) - cairo_context.circle(150, 150, 150) - cairo_context.fill - end - end - - # Or the square bracket accessors [] - self[1].use_cairo do |cairo_context| - cairo_context.circle(50, 50, 50) - cairo_context.set_source_color(:red) - cairo_context.fill - end - - # Or modify the coordinate system for all (most?) future calls - # Could be handy for a dynamic bleed - each do |card| - # note how this does NOT use save/restore. - # again... this "feature" lives in the Land of Undefined Behavior - card.cairo_context.translate(500, 500) - end - rect x: 0, y: 0, # actually 500, 500 - width: 50, height: 50, fill_color: :red - - - save_png prefix: 'cairo_access_' -end +require 'squib' + +Squib::Deck.new(cards: 2) do + background color: :white + # If you really need something custom-made, the underlying cairo context + # can be accessed directly via each Squib::Card + # + # WARNING! Input validation is not done on Squib::Cards. Proceed at your own risk. + + # The recommended approach is to use Deck's Enumerable, which iterates over Squib::Cards + # I also recommend wrapping it in a Cairo save/restore, which Squib calls "use_cairo" + each do |card| + card.use_cairo do |cairo_context| + cairo_context.set_source_color(:blue) + cairo_context.circle(150, 150, 150) + cairo_context.fill + end + end + + # Or the square bracket accessors [] + self[1].use_cairo do |cairo_context| + cairo_context.circle(50, 50, 50) + cairo_context.set_source_color(:red) + cairo_context.fill + end + + # Or modify the coordinate system for all (most?) future calls + # Could be handy for a dynamic bleed + each do |card| + # note how this does NOT use save/restore. + # again... this "feature" lives in the Land of Undefined Behavior + card.cairo_context.translate(500, 500) + end + rect x: 0, y: 0, # actually 500, 500 + width: 50, height: 50, fill_color: :red + + + save_png prefix: 'cairo_access_' +end