I can understand your frustration! File formats for use with CNC can become quite confusing and understandably frustrating.
They key thing to learn is that just because it is an SVG or a DXF, does not automatically make it a “file that is suitable for cutting” – which is why most CAM software are having issues with your files.
The key thing to remember when preparing a file, is that the CNC needs a “path” to follow, and as such, whatever is in the file, has a few criteria it must adhere to for the CAM software to understand it. It does differ for SVG and DXF though, so let me break it apart below for you:
SVG: SVG is a widely used format for sharing image data. Vector images are images consisting of “lines” (Not necesarilly paths) but it can also contain other Data (that CAM would not usually understand as lines/paths either) like Text entities (just a font with text. Its still an editable text entity, not a path yet (more about converting to paths later), embedded Bitmaps (a bitmap image does not contain any line/path data) and also native SVG object (not converted to paths yet).
These “other” types of entities inside your artwork may not be understood by CAM software. In order for a piece of software to know what to do, the “elements” inside the SVG ideally need to conform to:
- Be a VECTOR, but also of the type SVG:Path: Almost all Vector editors has a toolset for “Convert Object to Path”. Use this tool to convert all vectors to Paths. Some has an extra command for “Convert Text to Path”. Specific use information for this is available in your vector editor software’s documentation
- Preferably be a CLOSED vector; Closed Vectors are a combination of lines/arcs/polylines/beziers, etc that share the same start-point and end-point: For example: A square is a closed vector, but if one side is missing, and there is only 3 lines that does not “close” back together, its not a closed Vector. CAM software cannot perform “offset” calculations from Closed Vectors as it does not have any data to know the inside/outside of the line from.
- Convert any Bitmap artwork to Vectors: As CNC’s need to follow a Path, a Bitmap needs to be converted to a Vector; Most Vector Editing software allows you to “Trace” a bitmap.
- Simplify: If you did not draw the artwork yourself, there may be thousands of extraneous nodes in the vectors. All this extra data is ideal for high resolution printing, but to use the data for a CNC, its best if you can simplify it. Most Vector Editors have tools to reduce the number of nodes (for example deleting ones that are on the same straight line, only keeping the ones on each end, or by joining nodes within a certain distance from each other)
DXFs are a little harder as over the years the standard gets changed every few years. The most used standard is the “DXF R14 Polyline” definition.
- Most CAD software allows you to “save as” an older DXF version: Select R12 or R14
- Convert all Splines, Arcs, Text, etc to Polylines. Polylines are similar to Closed Vectors above, under SVG: IE its a continous array of segments that form one entity. CAM softwares love to work with Polylines. The tool is sometimes called “explode” as it can explode a spline into a polyline, for example.
- If you save as DXF R14, and all the objects inside the DXF are converted to Polylines, it should work for 99% of the cases.
In terms of your question: “I’d even be delighted if you could just tell me which software to use”, I can offer you what I personally use for most jobs:
SketchUp Make 2017, with the GuitarList DXF Plugin:
The 2017 Free edition of Sketchup is still my goto for most “engineering” like jobs, think plates, brackets, signage, etc. Natively the free version of Sketchup cannot export DXFs, but the GuitarList DXF Plugin does a super job of exporting DXF R12 Polylines (select DXF Polyline on export): See https://www.guitar-list.com/download-software/convert-sketchup-skp-files-dxf-or-stl and https://www.sketchup.com/download/make
Inkscape is my go-to for any SVG work. It has a pretty good bitmap tracer in the form of PoTrace (Import a bitmap, right click, Trace)
It also has tools to convert to Path (Select All, Path, Object to Path – in one go convert everything in the file to Paths)
Once you give a little thought into what CAM software needs to calculate offset paths (to move the cutting path off by half the width of the endmill, so the cut comes out the right size) you will eventually be able to check a file visually for issues. Open Vectors are the most troublesome (edit the nodes and close them if possible), as are non-polyline objects (a polyline describes the entity as a singularity… a bunch of loose lines not joined into a polyline doesnt mean much to CAM softwares)
And to me the most important lesson: Its often better to redraw something yourself, than use that file off the internet (: – as you can use the native tools in your favourite application, the chances of a success just goes up. That random file on the internet, who knows where its from, whats inside it, how many conversions between formats has there been to it, etc.