1 #include <tabulate/markdown_exporter.hpp>
2 using namespace tabulate;
3 
4 #if __cplusplus >= 201703L
5 #include <variant>
6 using std::variant;
7 #else
8 #include <tabulate/variant_lite.hpp>
9 using nonstd::variant;
10 #endif
11 using Row_t = std::vector<variant<std::string, const char *, Table>>;
12 
main()13 int main() {
14   Table movies;
15   movies.add_row(Row_t{"S/N", "Movie Name", "Director", "Estimated Budget", "Release Date"});
16   movies.add_row(Row_t{"tt1979376", "Toy Story 4", "Josh Cooley", "$200,000,000", "21 June 2019"});
17   movies.add_row(Row_t{"tt3263904", "Sully", "Clint Eastwood", "$60,000,000", "9 September 2016"});
18   movies.add_row(
19       {"tt1535109", "Captain Phillips", "Paul Greengrass", "$55,000,000", " 11 October 2013"});
20 
21   // center align 'Director' column
22   movies.column(2).format().font_align(FontAlign::center);
23 
24   // right align 'Estimated Budget' column
25   movies.column(3).format().font_align(FontAlign::right);
26 
27   // right align 'Release Date' column
28   movies.column(4).format().font_align(FontAlign::right);
29 
30   // Color header cells
31   for (size_t i = 0; i < 5; ++i) {
32     movies[0][i].format().font_color(Color::yellow).font_style({FontStyle::bold});
33   }
34 
35   MarkdownExporter exporter;
36   auto markdown = exporter.dump(movies);
37 
38   // tabulate::table
39   std::cout << movies << "\n\n";
40 
41   // Exported Markdown
42   std::cout << markdown << std::endl;
43 }
44