inkscape
Create and edit vector graphics
TLDR
Open an SVG file in the Inkscape GUI
Export an SVG file into a bitmap with the default format (PNG) and the default resolution (96 DPI)
Export an SVG file into a bitmap of 600x400 pixels (aspect ratio distortion may occur)
Export the drawing (bounding box of all objects) of an SVG file into a bitmap
Export a single object, given its ID, into a bitmap
Export an SVG document to PDF, converting all texts to paths
Duplicate the object with id="path123", rotate the duplicate 90 degrees, save the file, and quit Inkscape
SYNOPSIS
inkscape [OPTIONS...] [FILE...]
inkscape --shell
PARAMETERS
-V, --version
Prints the Inkscape version and exits.
-h, --help
Displays a help message with command-line options.
-f, --file=FILE
Opens the specified SVG FILE. Multiple files can be specified for batch processing.
-o, --export-filename=FILENAME
Specifies the output FILENAME for exported documents. This is used in conjunction with export options like --export-type.
-e, --export-png=FILENAME
Exports the document or selected objects to a PNG image file with the specified FILENAME.
--export-type=TYPE
Specifies the export format, such as png, pdf, ps, eps, svg, plain-svg, optimized-svg, webp, or jpg.
--export-area-drawing
Exports the area defined by the drawing content (bounding box of all objects), rather than the page boundaries.
--export-id=OBJECT_ID
Exports only the object with the specified OBJECT_ID. Useful for exporting individual elements from a complex SVG.
--actions=ACTIONS
Executes a semicolon-separated list of ACTIONS on the document and then exits. This is a powerful feature for scripting complex operations and transformations.
--shell
Enters an interactive shell mode, allowing multiple commands to be executed without restarting Inkscape for each operation, ideal for complex scripting.
--without-gui
Runs Inkscape in a headless mode, without displaying the graphical user interface. Ideal for batch processing and server-side operations.
DESCRIPTION
Inkscape is a powerful free and open-source vector graphics editor. It uses Scalable Vector Graphics (SVG) as its native format, supporting many advanced SVG features like markers, clones, and alpha blending. It offers a rich set of tools for creating and editing vector artwork, including tools for drawing, shape creation, text manipulation, path operations, and various transformations.
While primarily known for its graphical user interface, Inkscape also provides a robust command-line interface, making it suitable for scripting, batch processing, and automated tasks such as converting SVG files to other formats (PNG, PDF, EPS, etc.) or applying modifications without opening the GUI. It is widely used by designers, illustrators, and web developers for creating illustrations, logos, diagrams, icons, and web graphics.
CAVEATS
Complex or very large SVG files can be resource-intensive, potentially leading to slow performance or high memory consumption. The command-line interface, while powerful, requires familiarity with internal object IDs and a specific action syntax for advanced scripting, which can have a learning curve. SVG rendering can sometimes vary subtly across different browsers or viewers due to varying levels of SVG standard implementation.
KEY FEATURES
Native Scalable Vector Graphics (SVG) format support, comprehensive object creation and manipulation tools (paths, shapes, text), extensive text support, powerful alpha blending, gradients, patterns, and filters. It also supports extensibility through Python scripts and a rich set of command-line actions for custom functionalities.
COMMON USE CASES
Creation of logos, icons, web graphics, illustrations, diagrams, and technical drawings. Its robust command-line capabilities make it invaluable for batch image conversion, SVG optimization, and automated design workflows in scripting environments.
HISTORY
Inkscape was originally forked from the Sodipodi project in 2003, with the goal of creating a vector graphics editor fully compliant with the SVG standard and focusing on a user-friendly interface. The project emphasizes adherence to W3C SVG standards, usability, and extensibility. Over the years, it has grown significantly, gaining a large community of users and developers, and becoming a leading open-source alternative to commercial vector graphics software.