Drawing Bot is a free, open source software for converting images to line drawings for Plotters / Drawing Machines / 3D printers. It also serves as an application for visual artists to create stylised line drawings from images / video. You can find the full documentation here.
It is available for Windows, Mac and Linux.
If you want to support the development of DrawingBotV3 you can donate here
- 18 Path Finding Algorithms - all highly configurable to create unique drawing styles
- Automatic Path Optimisation for Faster Plots - Line Simplifying, Merging, Filtering, Sorting
- Pen Settings: configurable colour / stroke width / distribution weight / blend modes - perfect for multi-layered plots.
- Image Sequences: You can export image sequences animations of your creations!
- 60+ Image Filters for pre processing the imported image
- Automated CMYK separation
- Plotter / Serial Port Connection: Connect to HPGL based plotters and control them of the serial port.
- Advanced User Interface with live drawing preview
- User configurable Drawing Area, with Padding / Scaling Modes
- Version Control: Save your favourite versions as you go and reload them.
- Project Saving & Loading
- Special pens for Original Colour/Grayscale Sampling
- Presets: can be saved/imported/exported for sharing different styles with other users
- Exports can be exported per/pen or per/drawing in multiple file types
- Batch Processing: Convert entire folders of images automatically.
- Video Processing: Convert every frame from imported video files automatically
- HPGL Export - Export files for plotters, with configurable Hard-Clip limits, X-Axis Mirror, Y-Axis Mirror, X-Axis Alignment, Y-Axis Alignment, Rotation, Curve Flatness, Pen Velocity and the initial Pen Number.
- GCode Export - configurable Drawing Area, XYZ Offsets / Auto Homing.
- vpype Integration
- Sketch Lines PFM
- Sketch Curves PFM
- Sketch Squares PFM
- Sketch Quad Beziers PFM
- Sketch Cubic Beziers PFM
- Sketch Catmull-Roms PFM
- Sketch Shapes PFM
- Sketch Sobel Edges PFM
- Spiral PFM
- Voronoi Circles
- Voronoi Triangulation
- Voronoi Tree
- Voronoi Stippling
- Voronoi Diagram
- Voronoi TSP
- Mosaic Rectangles
- Mosaic Voronoi
- Mosaic Custom
More info here
Import Formats:
Images: [.tif, .tga, .png, .jpg, .gif, .bmp, .jpeg]
Videos: [.mp4, .mov, .avi]
Export Formats:
Vectors: [.svg, .hpgl, .pdf],
Images/Image Sequences: [.png, .jpg, .jpeg, .tif, .tga]
Videos: [.mp4, .mov]
GCode: [.gcode, .txt],
Downloads: Latest Release
You can choose from the following options.
-
Windows - Installer (.exe)
Includes all required libraries and Java Runtime. No further setup required.
-
Windows - Portable (.zip)
Includes all required libraries and Java Runtime. No further setup required.
-
Mac (x86)/Linux/Win - Executable (.jar)
Includes all required libraries but you must manually install JAVA 11+
-
Mac M1 (arm64) - Executable (.jar)
The bundled OpenJFX does not work on arm64 processors and using a x86 java build (through Rosetta 2 emulation) has graphical glitches & reduced performance. The best option is to install a JDK build with JFX built in, such as the one provided by Bellsoft just make sure to install the full package or JFX won't be bundled.
-
Raspberry PI (ARM32) - Executable (.jar)
As JavaFX is no longer part of the JDK (since JAVA 11), running a JavaFX program on Raspberry Pi will not work.
BellSoft provides the Liberica JDK. The version dedicated for the Raspberry Pi includes JavaFX. And setting the version by default using the update-alternatives command.
Thanks to Frank Delporte, more info at Java Magazine
$ cd /home/pi
$ wget https://download.bell-sw.com/java/13/bellsoft-jdk13-linux-arm32-vfp-hflt.deb
$ sudo apt-get install ./bellsoft-jdk13-linux-arm32-vfp-hflt.deb
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config java
Sometimes opening the .jar normally won't work on MAC, instead you should launch the jar from the terminal with the following command. Swapping in the correct file name
java -jar DrawingBotV3-X.X.X-XXXX-all.jar
Opening the .jar may open it as an archive file, instead you should launch the jar from the terminal with the following command. Swapping in the correct file name
java -jar DrawingBotV3-X.X.X-XXXX-all.jar
All the dependencies are automatically included and do not need to be installed manually.
- OpenJFX - for User Interface / Rendering
- JTS Topology Suite - for Vectors/Geometry
- ImgScalr - for Optimised Image Scaling
- Gson - for Configuration/Preset Files
- Apache XML Graphics - for SVG Rendering
- iText - for PDF Rendering
- FXGraphics2D - for Swing/JavaFX Compatibility
- JHLabs - for Image Filters / Effects
- JOML - for Video Import and Export
- JCodec - for Video Import and Export
- jSerialComm - for Serial Port Communication
DrawingBotV3 started as an expansion of Drawbot Image to GCode V2 originally written by Scott Cooper.
Thanks to Scott for allowing me to publish this version!
I'm starting a collection of both Digital & Physical Artwork created with DrawingBotV3.
When the collection reaches a decent size it will be available online (on Instagram & The Drawing Bot Documentation) and potentially in exhibitions in the UK.
If you'd like to contribute to this collection please submit your artwork here!
If you work is phyisical, please email me here!