If you're interested in file output, something like png looks reasonable β you hand it an array of pixel values and you get back an image file. The rasterizer math you want isn't too bad to do by hand if you don't care about rendering speed.
You may want to take a look at my retrofire project. It does what you want, but you may need to hack it a bit and cherrypick the pieces you need if you want a truly minimal solution. Itβs not (yet) at crates.io as it lacks docs and needs some API design and cleanup. Licensed under Apache2/MIT.