The laser cutter doesn’t care where your DXF came from. It cares whether every cut profile is a closed polyline at the right scale with no phantom geometry hiding on invisible layers. Illustrator and Inkscape both produce valid DXF files — just not automatically. Both tools were designed for screen output, not manufacturing tolerances, and that mismatch shows up in specific, repeatable ways.

This post covers what actually goes wrong in each tool and how to fix it before your file reaches the machine.

What the Machine Needs

Before getting into per-tool settings, it’s worth being precise about what a laser cutter’s CAM software requires from a DXF:

  • Closed contours for cut profiles. An open path gets interpreted as an etch line or ignored entirely depending on the CAM system.
  • Correct units declared in the DXF header. If the INSUNITS variable says “unitless” or disagrees with the actual geometry scale, the machine operator will get a part that’s 25.4× too big or too small.
  • Z = 0 for all entities. Most 2D DXF importers silently drop entities that have Z coordinates other than zero.
  • No splines or ellipses unless the specific CAM system explicitly supports them. Most fiber laser controllers and CO₂ laser CAM packages convert splines to polylines internally, often with loose tolerances that produce faceted cuts.
  • No blocks, dimensions, hatches, or construction geometry. Everything in the file is a candidate for cutting.

Illustrator and Inkscape fail on units, closed contours, and hidden geometry in different ways.

Adobe Illustrator

Document Setup Before You Export

Illustrator’s internal coordinate system is in points (1/72 inch). When you export DXF, the converter maps those points to whatever unit you specify in the export dialog. If your artboard is sized in millimeters, that doesn’t guarantee the DXF header will declare millimeters — the two are independent.

Before exporting:

Set document units to mm or inches in Document Setup (File > Document Setup > Units). Pick the unit your fabricator uses. Most European laser shops work in mm; North American shops split between the two.

Build at 1:1 scale. A 50mm × 100mm rectangle should be drawn 50mm × 100mm on the artboard, not 5mm × 10mm with a note that it’s 10× scale. The DXF export dialog has a scale option, but relying on it introduces one more place for errors to hide.

Convert all text to outlines before export (Type > Create Outlines). Illustrator can export live text as a DXF TEXT entity, but most laser CAM software either ignores text entities or tries to engrave the font using whatever character spacing the software decides. If you want text engraved, you need vector outlines.

The DXF/DWG Export Dialog

File > Export > Export As > DXF/DWG opens a dialog with options that are easy to set wrong.

AutoCAD version: Select R13/LT95 or R14. Earlier versions (R12) use the POLYLINE entity type rather than LWPOLYLINE, which some CAM imports handle better. Later versions (2000+) introduce features that older laser controllers don’t understand. R14 is a reasonable default.

Scale: Leave at 1:1 if you drew at real-world size. If you drew at a different scale, set it here — but do it once, and verify afterward.

Fonts: Set to “Convert to Outlines.” Text entities in DXF have no guaranteed rendering.

Appearance: The options here affect how strokes export. “Preserve Appearance” converts stroked paths to filled outlines, which is usually wrong for laser cutting — a 1mm stroke on a circle becomes a thick ring, not a cut line. Choose “Preserve Editability” (paths stay as paths, strokes stay as stroke weight).

ROBO-Master: Uncheck. This flag switches entity types for compatibility with Roland plotter software and changes how polylines are written. It’s irrelevant for laser cutting and introduces incompatibilities with AutoCAD-based CAM.

LWPOLYLINE: Uncheck. LWPOLYLINE is the newer lightweight polyline entity. Older laser controllers (anything running firmware more than 5 years old) may only understand the classic POLYLINE entity. Unchecking this forces the older entity type and works across a wider range of systems.

After export, open the file in a DXF viewer or AutoCAD and measure a known feature. A 50mm circle should measure 50mm. If it measures 1.417mm or 1417mm, your units declaration is wrong.

Compound Paths and the Engraving Trap

Illustrator represents shapes with holes using compound paths: the outer boundary is one subpath, each hole is another subpath with reversed winding direction. When this exports to DXF, the result depends on the version and how the CAM software interprets overlapping closed polylines.

Some CAM systems treat two nested closed polylines as a pocket (cut inside, leave the middle). Others treat each polyline independently and double-cut the inner boundary. Some laser engravers — particularly those using RDWorks or LaserCut — will engrave the interior of a compound path if they detect overlapping closed paths.

The safest approach: expand compound paths to separate closed polylines before export (Object > Expand Appearance, then Object > Path > Release Compound Path if needed), then verify that the resulting polylines represent the geometry you actually want cut. A letter O, for instance, becomes an outer oval and an inner oval — both will be cut.

Illustrator’s Bezier Curves and Node Count

Illustrator paths export as spline entities in older DXF versions or as polylines approximated from the Bezier control points. The approximation chord tolerance defaults to something reasonable, but complex organic shapes from Illustrator’s Pen tool can produce DXF files with several thousand nodes per path. This isn’t a cutting error, but it slows down import, makes the file large, and can confuse certain controller firmware.

If you need to reduce node count without changing geometry, use Object > Path > Simplify before export. Set the tolerance to 0.1mm or smaller for most laser work — the laser kerf will be wider than that anyway.

Inkscape

The DPI Shift That Breaks Everything

Inkscape’s internal unit is the pixel. The number of pixels per millimeter (or per inch) is set by the document DPI. And this is where things get painful: Inkscape 0.91 and earlier used 90 DPI. Inkscape 0.92 and later use 96 DPI.

A file built in 0.91 at “mm” scale and opened in 0.92 will have all geometry scaled by 90/96 = 0.9375×. A 100mm line becomes 93.75mm. If someone sends you an Inkscape file and your export comes out at the wrong size, DPI version mismatch is the first thing to check.

Set your document to the units you’ll export in. Open Document Properties (Shift+Ctrl+D), set the Display Units to mm (or in), and set the document width and height in those units. Inkscape stores everything internally in pixels but the unit display will give you a reference.

Verify before export: Draw a rectangle at a known dimension (50mm × 50mm), export to DXF, open in a viewer, measure. Do this once with a new Inkscape install before relying on a workflow.

Export As vs Save As

Inkscape has two distinct DXF output paths:

File > Save As > .dxf uses the “Desktop Cutting Plotter” exporter. This outputs DXF R14 with the units set based on your document DPI. It’s the older exporter and has known bugs with scale in certain document configurations.

File > Export > Export As is a different dialog and may not offer DXF depending on your Inkscape version. On some builds, the Save As path is the only DXF output.

The reliable workflow: Use Save As > DXF. After the dialog opens, check the “Base unit” setting in the export options. Set it to mm. Check “Character encoding” to UTF8. If there’s a “Use ROBO-Master compatible files” checkbox, leave it unchecked.

Bezier Curves in Inkscape

Unlike Illustrator, Inkscape does not have a smooth polyline approximation for DXF export. Bezier curves export as a series of straight line segments using a fixed chord tolerance. The default tolerance is fairly tight, which means a smooth curve becomes a polygon with dozens of sides.

For laser cutting, this is usually fine — the cut kerf (0.1–0.3mm on most CO₂ lasers) is larger than the chord deviation. But if you’re cutting precise mechanical parts, run Path > Simplify to reduce node count first.

Convert all objects to paths before export: Path > Object to Path. This converts rectangles, circles, text, and other objects to explicit path entities. Without this step, circles sometimes export as ARC entities and rectangles sometimes export as LINE entities rather than closed polylines, which can cause the CAM importer to treat them as open profiles.

Groups and Layers

Inkscape layers export to DXF layers. If you’ve organized cuts and engrave marks on separate Inkscape layers, those will appear as separate DXF layers in the export — which is exactly what you want. Name your layers with the operation type: CUT, ENGRAVE, SCORE. Layer names flow through to the DXF.

Remove guides, grids, and any objects on the Canvas layer (the “hidden” layer Inkscape creates for guides) before export. Inkscape may or may not include guide objects in the DXF depending on version, but there’s no reason to risk it.

What Both Tools Get Wrong

Both Illustrator and Inkscape lack a concept that’s fundamental in engineering CAD: a path is either a cut profile or a sketch line, and those are different things with different behavior. In Illustrator and Inkscape, everything is a path with a stroke and a fill. The laser CAM software makes its best guess.

This creates three recurring problems:

Open paths are etch lines, not cut profiles. Draw a line segment in Illustrator and export it — the CAM software will etch or score that line, not cut through the material. If you intended a cut, the profile must be closed. Run a path closure check before exporting from either tool.

Stroke width is meaningless to the laser. A 0.1mm stroke and a 10mm stroke export as the same cut path. The stroke width in Illustrator/Inkscape tells the screen renderer how to display the path; it does not affect the DXF output. Some users mistakenly use hairline stroke (0.001") as a laser-cutting convention from plotting workflows. It has no effect on DXF output — but it’s useful as a visual reminder that a path is a cut line.

Fill color has no laser meaning without convention. Engineering CAD software like SolidWorks marks bend lines, engrave areas, and cut profiles using different layers with explicit names. In Illustrator and Inkscape, fills and strokes are presentation attributes. If your fabricator wants cut/etch/score on separate layers, you need to deliberately organize by Inkscape layer or Illustrator layer before export.

If You’re Coming from SolidWorks

If your workflow involves SolidWorks flat patterns rather than vector drawing software, you don’t have these problems — SolidWorks DXF exports carry explicit layer metadata for the cut profile, bend lines, and sketch geometry, and you can control exactly which entities export. CadShift’s batch DXF export automates this across an entire assembly in one click, with each part on its own layer.

The Illustrator/Inkscape workflow is appropriate for designs that originate as 2D artwork — signage, panels, decorative pieces, circuit enclosures designed in a graphic context. For mechanical sheet metal that starts as a 3D model, the DXF comes from the CAD system, and the relevant settings are the export options in the flat pattern dialog.

Quick Reference

Illustrator:

  • Document units: mm or in, 1:1 scale
  • Export: File > Export > DXF/DWG, version R13 or R14
  • ROBO-Master: off
  • LWPOLYLINE: off
  • Fonts: Convert to Outlines
  • Appearance: Preserve Editability
  • Text: Create Outlines before export
  • Compound paths: verify cut vs engrave intent
  • Verify: open DXF and measure a known feature

Inkscape:

  • Document units: mm, DPI check (96 for 0.92+)
  • Export: File > Save As > .dxf
  • Base unit: mm
  • Convert all objects to paths before export
  • Verify: open DXF and measure a known feature
  • Layers map to DXF layers — name them for operations

For either tool: open the exported DXF in a viewer or CAM import before sending to a fabricator. The scale errors in these tools are consistent and predictable — a test export on a new machine or Inkscape version costs 30 seconds and saves an entire production run.