void cairo_test_paint_checkered (cairo_t *cr) { cairo_surface_t *check; check = _draw_check (12, 12); cairo_save (cr); cairo_set_source_surface (cr, check, 0, 0); cairo_surface_destroy (check); cairo_pattern_set_filter (cairo_get_source (cr), CAIRO_FILTER_NEAREST); cairo_pattern_set_extend (cairo_get_source (cr), CAIRO_EXTEND_REPEAT); cairo_paint (cr); cairo_restore (cr); }
cairo_status_t cairo_test_paint_checkered (cairo_t *cr) { cairo_status_t status; cairo_surface_t *check; check = cairo_image_surface_create (CAIRO_FORMAT_RGB24, 12, 12); status = _draw_check (check, 12, 12); if (status) { cairo_surface_destroy (check); return status; } cairo_save (cr); cairo_set_source_surface (cr, check, 0, 0); cairo_pattern_set_filter (cairo_get_source (cr), CAIRO_FILTER_NEAREST); cairo_pattern_set_extend (cairo_get_source (cr), CAIRO_EXTEND_REPEAT); cairo_paint (cr); cairo_restore (cr); cairo_surface_destroy (check); return CAIRO_STATUS_SUCCESS; }