Skip to content
CAM / CNC · Decision guide · 2026

DXF R12 vs AutoCAD 2000 — Which one to pick for your CAM software

One line can save you a 45-minute import-debug session. Here is the decision tree.

Published April 16, 2026 · 8 min read
TL;DR — 30 seconds
  • ESPRIT 2020, Mastercam X3 and earlier, ArtCAM, Mach3, pre-V10 VCarve, older laser controllers: export as R12 (AC1009).
  • Fusion 360, VCarve V10+, Mastercam 2022+, LightBurn, modern wire EDM controllers: export as AutoCAD 2000 (AC1015) or newer.
  • Unsure? Start with R12. It reads everywhere. The trade-off is splines become polylines, which adds entities but does not break geometry.

What each DXF version actually contains

DXF (Drawing Exchange Format) is a text specification published by Autodesk. Each major AutoCAD release adds entity types, header variables and object records. The version string lives in the $ACADVER header and is what every CAD and CAM parser reads first to decide which grammar to expect.

R12 (AC1009) — 1992

  • Entities allowed: LINE, POLYLINE, ARC, CIRCLE, TEXT, POINT, SOLID, DIMENSION, INSERT, VIEWPORT.
  • No LWPOLYLINE, no SPLINE, no ELLIPSE, no LEADER, no MTEXT.
  • Colors: 256-entry ACI (AutoCAD Color Index) only, no true-color.
  • Layers: name + color + linetype. No transparency, no lineweight, no plot styles.
  • Every parser written after 1995 understands it. Safest for unknown-vintage CAM.

AutoCAD 2000 (AC1015) — 1999

  • Adds: LWPOLYLINE (lightweight polyline — single record instead of one-record-per-vertex, huge file-size win), SPLINE, ELLIPSE, MTEXT, LEADER, TOLERANCE, RAY, XLINE.
  • Adds layouts, paper space / model space separation.
  • Adds lineweight, plot styles, true color via 1000 extended data.
  • Default export of modern AutoCAD, Illustrator, Inkscape, Fusion 360 and Mastercam.

Why the gap matters for CAM

CAM software written between 1995 and 2005 parses DXF by pattern-matching entity codes line by line. When it sees SPLINE (code 100 / AcDbSpline) it either:

  1. Skips the entity silently (file looks partially empty).
  2. Throws a hard error ("invalid entity on line 12,432").
  3. Best case: recognizes it as unknown and logs a warning, continues on the remaining entities.

Decision table by CAM software

Software / versionR12 (AC1009)AutoCAD 2000 (AC1015)Pick
ESPRIT 2020 / 2023R12 — AC1015 often drops SPLINE/ELLIPSE
Mastercam 2025+AC1015 (preserves splines)
Mastercam X3 and earlierR12 only
VCarve V10+AC1015
VCarve Pro V9 and earlierR12
LightBurn 1.x / 2.xAC1015 preserves beziers
Fusion 360 (2024/2025/2026)AC1015 or newer
ArtCAM Express / Pro (legacy)R12
Mach3 / Mach4 (LazyCam)R12 only
AutoCAD / BricsCAD / DraftSight (reference)AC1015 (smaller files)

supported · supported but may drop entities · unsupported or broken.

The actual trade-offs

1. File size

AC1015 files with LWPOLYLINE are typically 40-60% smaller than the equivalent R12 POLYLINE version, because each vertex is one record instead of three.

For CAM software that streams DXF line by line this matters less than you would think — parsing time dominates. For import tools that load the whole file into memory (old ESPRIT), bigger files cause more allocation churn and more failed imports.

2. Curve fidelity

AC1015 keeps SPLINE as a single record with 4-8 control points. R12 has to decompose each spline into a polyline approximation — typically 40-120 small line segments per original curve. A clean logo with 20 bezier curves becomes 800-2,400 polyline segments in R12.

Consequences:

  • Toolpath smoothness: most CAM post-processors apply a chord deviation tolerance, so the visual output is identical. But if your CAM adds a tool radius offset, the many tiny segments can produce visible faceting at high magnification.
  • Entity count: this is what bites ESPRIT 2020. A 2,000-entity SPLINE-based drawing in AC1015 can balloon to 50,000+ entities in R12 and crash the importer. Fix: run the drawing through a path-simplification pass before exporting to R12, OR export AC1015 if the target supports it.

3. Layers & colors

R12 supports 256 ACI colors. AC1015 supports 16.7M true colors. If you need distinct colors per toolpath (typical for VCarve V-CARVE / POCKET / PROFILE / SCORE routing), R12 forces you to pick from the 256-color palette. Workaround: map your logical layers to ACI colors 1-7 which are universally recognized — most V-carve presets ship with matching mappings.

4. Units

Both formats use the same $INSUNITS header variable (1=inch, 4=mm, 5=cm). If $INSUNITS is absent, Fusion 360 assumes centimeters, Mach3 assumes inches, ESPRIT uses whatever you imported last. Always write the header explicitly.

5. Blocks and inserts

Both formats support BLOCK / INSERT. R12 is stricter about nested blocks (avoid blocks-within-blocks). AC1015 supports arbitrary nesting but some CAM parsers (pre-2010 LightBurn, older LazyCam) flatten everything on import anyway.

Error messages and what they actually mean

"Invalid entity on line N"
Cause: CAM encountered SPLINE, LWPOLYLINE or ELLIPSE in an R12-only parser.
Fix: Re-export as R12. If you need the curves preserved, simplify the geometry first.
"File opened but nothing visible"
Cause: Every entity was skipped because $ACADVER was unrecognized or all entities were AC1015-exclusive.
Fix: Check $ACADVER in the first 10 lines of the DXF. Should be AC1009 for R12 or AC1015 for AutoCAD 2000.
"Toolpath too slow / import takes 10 min"
Cause: Exporting as R12 converted curves into ~40,000 tiny line segments.
Fix: Re-export as AC1015 if possible, or reduce entity count via path simplification.
"Part imports at wrong scale (25.4× too big or small)"
Cause: $INSUNITS missing. CAM defaulted to inches or centimeters mismatched with the source.
Fix: Write $INSUNITS=4 (mm) in the header, re-import.
"Colors all white / toolpath mapping broken"
Cause: Exported AC1015 with true-color layers to a CAM that only reads ACI index colors.
Fix: Remap layers to ACI 1-7 before export, OR use R12 which only supports ACI.

Practical export settings

From AutoCAD / BricsCAD / DraftSight

File → Save As → DXF → pick AutoCAD R12 DXF for legacy CAM, AutoCAD 2000 DXF for modern CAM. In DraftSight the "Save thumbnail" toggle writes a bitmap preview — some parsers choke on it, so turn it off for CAM exports.

From Illustrator

File → Export As → DXF/DWG. Version picker is under "Advanced". Turn off "Preserve appearance" — it adds extended data that pre-2005 CAM rejects. Set color model to "Original" to keep ACI indices.

From Inkscape

Inkscape's DXF exporter (extensions → flatten beziers → DXF R14) only outputs R12-compatible geometry. The R14 label in the menu is misleading — the file it produces is actually AC1009 compatible. Always flatten beziers first with "Extensions → Modify path → Flatten beziers" (tolerance 0.2 mm), otherwise some curves become invalid.

From VectoSolve (image to DXF)

Under the CAM-target dropdown, pick the target CAM by name. R12 is auto-selected for ESPRIT / Mastercam X / ArtCAM / Mach3 / VCarve V9. AC1015 is auto-selected for Fusion 360 / Mastercam 2025 / VCarve V10+ / LightBurn. The compatibility analyzer runs on every export and warns if the drawing exceeds the target's entity budget.

When to override the default

Two cases where the obvious pick is wrong:

  1. LightBurn with a lot of text. LightBurn parses MTEXT (AC1015-only) correctly but silently ignores R12's TEXT on some older builds. If you see empty text boxes, switch to AC1015.
  2. Fusion 360 with legacy sheet metal nest files. Some nesting software emits R12 even for Fusion 360 targets. The handoff works, but Fusion re-saves as AC1027 on edit, so your downstream R12-only consumer breaks. Always keep a master AC1015 and re-export R12 per consumer.

Skip the format roulette

VectoSolve's CAM-target dropdown picks R12 or AC1015 automatically based on your CAM software, writes $INSUNITS for 1:1 scale, and runs a live compatibility check before export.