anchor.diff:  (define-operator-snippet operator-over-reverse :dest-over)
   (define-operator-snippet operator-saturate :saturate)
   (define-operator-snippet operator-xor :xor)
  +)
   
         
   
  
positive.code:     (cairo:fill cr)))
  
  
  (defun snippet-set-bg-svg (cr filename)
    (let ((handle (make-instance 'rsvg:handle :filename filename)))
      (cairo:with-context (cr)
        (with-slots (rsvg:width rsvg:height) handle
  	(cairo:scale cr (/ 1.0 rsvg:width) (/ 1.0 rsvg:height))
  	(rsvg:render-cairo handle cr)))))
  
  (define-snippet librsvg (cr)
  
negative.code: #+cmu(asdf:oos 'asdf:load-op :gtk)
  #+sbcl(require :cairo)
  #+cmu(asdf:oos 'asdf:load-op :cairo)
  
  (eval-when (:compile-toplevel :load-toplevel :execute)
    (if (pkg-config:pkg-exists-p "librsvg-2.0" :atleast-version "2.13.93" :error nil)
        (push :rsvg *features*)
      (warn "SVG tests disabled as the required version of librsvg is not available.")))
  
  
  #+(and sbcl rsvg)(require :rsvg)
  #+(and cmu  rsvg)(asdf:oos 'asdf:load-op :rsvg)
  
  (defpackage "TESTCAIRO"
    (:use "COMMON-LISP" "GTK")
  