Browse Source

New sample to demonstrate direct cairo access

dev
Andy Meneely 11 years ago
parent
commit
2b93de6f98
  1. 27
      samples/cairo_access.rb

27
samples/cairo_access.rb

@ -0,0 +1,27 @@
require 'squib'
Squib::Deck.new(cards: 2) do
# 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(:white)
cairo_context.paint
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
save_png prefix: 'cairo_access_'
end
Loading…
Cancel
Save