✓ Verified ✍️ Content Creation ✓ Enhanced Data

Dxf To Image

Convert DXF to PNG, JPG, or SVG for sharing (e.g.

Rating
3.8 (83 reviews)
Downloads
2,257 downloads
Version
1.0.0

Overview

Convert DXF to PNG, JPG, or SVG for sharing (e.g.

Complete Documentation

View Source →

DXF to Image / SVG

Convert DXF (CAD) files to PNG, JPG, or SVG. Useful when you have DXF from map-grabber, Rhino, or other CAD tools and need a raster image to send in chat or a vector SVG for editing.

Dependencies

  • ezdxf (DXF read + drawing add-on)
  • matplotlib (for PNG/JPG only)
  • Pillow (for JPG only)
Setup: OpenClaw does not install Python packages automatically. After installing this skill, run once: pip install -r requirements.txt (from the skill folder). If a script fails with ModuleNotFoundError, install the missing package.

Usage

Convert DXF to PNG, JPG, or SVG

Parameters:

  • input: Path to the DXF file.
  • -o, --output: Output file path (default: same name as input with .png, .jpg, or .svg).
  • -f, --format: png (default), jpg, or svg.
  • --width, --height: Output size in pixels for PNG/JPG only (keeps aspect ratio if only one is set).
  • --dpi: DPI for PNG/JPG (default 150).
  • --margin: Margin in mm for SVG (default 2).
bash
# DXF to PNG (default)
python3 scripts/convert_dxf.py drawing.dxf -o drawing.png

# DXF to SVG (vector, no matplotlib for this path)
python3 scripts/convert_dxf.py site.dxf -f svg -o site.svg

# DXF to JPG
python3 scripts/convert_dxf.py site.dxf -f jpg -o site.jpg

# Fixed width 800px (height auto)
python3 scripts/convert_dxf.py map.dxf -o map.png --width 800

Sending images to Telegram

Used from the OpenClaw Telegram conversation. Run the script with -o .png or -o .jpg, then send that file to the user via the OpenClaw message/media tool.

OpenClaw allowed paths: The message tool only sends files from allowed dirs (~/.openclaw/media/, ~/.openclaw/agents/, or /tmp). Use e.g. -o ~/.openclaw/media/out.png or -o /tmp/out.png; do not use the skill install directory or sending will fail.

Agent behavior: When the user asks to convert a DXF to PNG, JPG, or SVG (or "send DXF as image"), run the script directly with exec: use convert_dxf.py -o with -f png/jpg/svg and output path under an allowed dir; then send the generated file. Do not ask for confirmation; execute and return the file.

Examples

User: "Convert this DXF to PNG so I can send it in Telegram." Action: Run convert_dxf.py -o /tmp/out.png, then send the PNG to the user.

User: "Export the DXF as SVG." Action: Run convert_dxf.py -f svg -o /tmp/out.svg, then send or return the SVG path.

User: "Turn the site DXF into a JPG, 1200px wide." Action: Run with -f jpg -o /tmp/site.jpg --width 1200, then send the JPG.

Installation

Terminal bash

openclaw install dxf-to-image
    
Copied!

💻Code Examples

example.sh
# DXF to PNG (default)
python3 scripts/convert_dxf.py drawing.dxf -o drawing.png

# DXF to SVG (vector, no matplotlib for this path)
python3 scripts/convert_dxf.py site.dxf -f svg -o site.svg

# DXF to JPG
python3 scripts/convert_dxf.py site.dxf -f jpg -o site.jpg

# Fixed width 800px (height auto)
python3 scripts/convert_dxf.py map.dxf -o map.png --width 800

Tags

#image_and-video-generation

Quick Info

Category Content Creation
Model Claude 3.5
Complexity One-Click
Author qrost
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install dxf-to-image