cairo samples

 arc
 arc_negative
 clip
 clip_image
 curve_rectangle
 curve_to
 fill_and_stroke2
 fill_and_stroke
 gradient
 image
 imagepattern
 libsvg
 operator_add
 operator_atop
 operator_atop_reverse
 operator_in
 operator_in_reverse
 operator_out
 operator_out_reverse
 operator_over
 operator_over_reverse
 operator_saturate
 operator_xor
 path
 set_line_cap
 set_line_join
 text_align_center
 text
 text_extents
 xxx_clip_rectangle
 xxx_dash
 xxx_long_lines
 xxx_multi_segment_caps
 xxx_self_intersect
prev
next
cairo_pattern_t *pat;
pat = cairo_pattern_create_linear (0.0, 0.0,  0.0, 1.0);
cairo_pattern_add_color_stop (pat, 1, 0, 0, 0, 1);
cairo_pattern_add_color_stop (pat, 0, 1, 1, 1, 1);
cairo_rectangle (cr, 0,0,1,1);
cairo_set_pattern (cr, pat);
cairo_fill (cr);

cairo_pattern_destroy (pat);
pat = cairo_pattern_create_radial (0.45, 0.4, 0.1,
                                   0.4,  0.4, 0.5);
cairo_pattern_add_color_stop (pat, 0, 1, 1, 1, 1);
cairo_pattern_add_color_stop (pat, 1, 0, 0, 0, 1);
cairo_set_pattern (cr, pat);
cairo_arc (cr, 0.5, 0.5, 0.3, 0, 2 * M_PI);
cairo_fill (cr);
cairo_pattern_destroy (pat);