Remove cairo dependency

We initially used Cairo for its bezier flattening algorithm. That
algorithm turned out to be a bit too imprecise at the scales we're
working at here (#17), so I ended up porting over some code from
Antigrain Graphics. The only other thing we used Cairo for was debug
output and coordinate transforms, so I just wrote the relevant vector
math in a small header file, deleted all debug output code and thus
eliminated the cairo dependency. This is a step towards Windows builds.
This commit is contained in:
jaseg 2021-04-25 00:09:57 +02:00
parent 776e0bd206
commit 1180ebdc1f
17 changed files with 330 additions and 363 deletions

View file

@ -422,7 +422,7 @@ int main(int argc, char **argv) {
SVGDocument doc;
cerr << "Loading temporary file " << frob << endl;
ifstream load_f(frob);
if (!doc.load(load_f, "/tmp/debug.svg")) {
if (!doc.load(load_f)) {
cerr << "Error loading input file \"" << in_f_name << "\", exiting." << endl;
return EXIT_FAILURE;
}