+static void card_draw(game_t *game, card_t *card, cairo_t *cr, int x, int y)
+{
+ char number_string[3];
+ int len;
+
+ len = snprintf (number_string, 3, "%d", card->number + 1);
+ if (len < 0 || len >= 3)
+ FATAL_ERROR ("snprintf failed");
+
+ cairo_save(cr);
+ cairo_translate(cr, x, y);
+ rsvg_handle_render_cairo (game->blanktile, cr);
+
+ if (card->color == BLACK)
+ cairo_set_source_rgb (cr, 0.0, 0.0, 0.0);
+ if (card->color == BLUE)
+ cairo_set_source_rgb (cr, 0.0, 0.0, 1.0);
+ if (card->color == RED)
+ cairo_set_source_rgb (cr, 1.0, 0.0, 0.0);
+ if (card->color == YELLOW)
+ cairo_set_source_rgb (cr, 1.0, .843, 0.0);
+ cairo_move_to (cr, 10, 25);
+ cairo_set_font_size(cr, 25);
+ cairo_show_text (cr, number_string);
+
+ cairo_restore(cr);
+}
+