//Add adds as surfaces to s. // //Originally cairo_tee_surface_add. func (s Surface) Add(as ...cairo.Surface) error { me := s.XtensionRaw() for _, a := range as { C.cairo_tee_surface_add(me, a.XtensionRaw()) } return s.Err() }
//New creates a new tee surface. // //Originally cairo_tee_surface_create. func New(masterSurface cairo.Surface, surfaces ...cairo.Surface) (Surface, error) { m := C.cairo_tee_surface_create(masterSurface.XtensionRaw()) for _, s := range surfaces { C.cairo_tee_surface_add(m, s.XtensionRaw()) } S := Surface{cairo.NewXtensionPagedVectorSurface(m)} return S, S.Err() }