tl;dr: Have a look at
https://github.com/jaseg/gerbolyzeI'm a fan of artsy PCB design and for a while I've been working on PCB tool support for nice-looking graphics. I'm personally working with both KiCAD and Alitum, and both have pretty poor graphics support. In case of KiCAD there are tools like
svg2shenzhen and
svg2mod but both are fairly limited. A few years back I wrote Gerbolyze, a tool to trace bitmaps directly into gerber files to side-step the performance and Gerber spec compliance issues of KiCAD and Altium (see
original post). That tool was alright, but I still was not happy.
Today I finished the second major version of Gerbolyze. Now, Gerbolyze can handle both bitmap (PNG/JPG)
and SVG input: For bitmaps it has a special halftone vectorizer that stays within trace/space design rules. And SVGs get
accurately converted into Gerber primitives, with almost full support for the SVG 1.1 static spec. The way it works is you give it a stack of Gerber files and it outputs an SVG template with the board's dimensions and a layer for each Gerber file. You then open that template in Inkscape and put whatever you like in it (including bitmap images!). The modified file is then pasted into the original gerber files by another call to Gerbolyze.
Here's a flow char of how you use it:

Compared to svg2shenzhen, Gerbolyze can handle
much more complex designs--the only limit is the output gerber file size. Also, the SVG gets accurately converted at the vector level instead of rendering it into a bitmap and then tracing that bitmap. This means things like text or smooth lines don't look jagged.
Compared to svg2mod, Gerbolyze can also handle much more complex designs. Also, it supports almost the full SVG 1.1 spec and will render things as you see them on screen with no little surprises: e.g. patterns, dashed strokes, markers and stroke miters/end caps are fully supported.
I have attached a few examples of what it can do. The first one is a design I had produced recently. The other one showcases the SVG renderer, left is SVG input, right is Gerber output.
If you're interested, please have a look at the
Github repo. Installation instructions for Ubuntu, Fedora, Debian and Archlinux are in the README. For Windows I don't have a finished installation guide yet, but installing it through
Arch on WSL should be straightforward.