Inkscape 0.91 on Fedora 24
|Initial release||November 2, 2003|
|Preview release||0.92.1 (February 13, 2017[±])|
|Written in||C++ with gtkmm, Python (extensions)|
|Platform||IA-32 and x64|
|Available in||66 languages|
|Type||Vector graphics editor|
|License||GNU General Public License, version 3 or later|
Inkscape is a free and open-source vector graphics editor; it can be used to create or edit vector graphics such as illustrations, diagrams, line arts, charts, logos and complex paintings. Inkscape's primary vector graphics format is Scalable Vector Graphics (SVG), however many other formats can be imported and exported.
Inkscape can render primitive vector shapes (e.g. rectangles, ellipses, polygons, arcs, spirals, stars and 3D boxes) and text. These objects may be filled with solid colors, patterns, radial or linear color gradients and their borders may be stroked, both with adjustable transparency. Embedding and optional tracing of raster graphics is also supported, enabling the editor to create vector graphics from photos and other raster sources. Created shapes can be further manipulated with transformations, such as moving, rotating, scaling and skewing.
Four former Sodipodi developers (Ted Gould, Bryce Harrington, Nathan Hurst, and MenTaLguY) led the fork; they identified differences over project objectives, openness to third-party contributions, and technical disagreements as their reasons for forking. With Inkscape, they said they would focus development on implementing the complete SVG standard, whereas Sodipodi development emphasized developing a general-purpose vector graphics editor, possibly at the expense of SVG.
Following the fork, Inkscape's developers changed it greatly: they changed the programming language from C to C++; adopted the GTK+ (formerly GIMP Toolkit) toolkit C++ bindings (gtkmm); redesigned its user interface, and added a number of new features. Notably, Inkscape's implementation of the SVG standard, although incomplete, has shown gradual improvement.
The basic objects in Inkscape are:
Additionally, there are more specialized objects:
Every object in the drawing can be subjected to arbitrary affine transformations: moving, rotating, scaling, skewing and a configurable matrix. Transformation parameters can be also specified numerically in the Transform dialog. Transformations can snap to angles, grids, guidelines and nodes of other objects. Grids, guides and snapping properties are defined on a per-document basis. As an alternative to snapping, an Align and Distribute dialog is provided, which can perform common alignment tasks on selected objects: e.g. line them up in a specified direction, space them equally, scatter them at random and remove overlaps between objects.
Objects can be arbitrarily grouped together. Groups of objects behave in many respects like "atomic" objects: for instance, they can be cloned or assigned a paint. Objects making up a group can be edited without having to ungroup it first, via an Enter Group command: the group can then be edited like a temporary layer.
The Z-order determines the order in which objects are drawn on the canvas. Objects with a high Z-order are drawn last and therefore drawn on top of objects lower in the Z-order. Order of objects can be managed either using layers, or by manually moving the object up and down in the Z-order. Layers can be locked or hidden, preventing modifying and accidental selection.
A special tool, Create Tiled Clones, is provided to create symmetrical or grid-like drawings using various plane symmetries.
Objects can be cut, copied and pasted using a clipboard. However, as of version 0.46, Inkscape uses an internal variable rather than the Operating System clipboard, which limits copy and paste operations to one application instance. Objects can be copied between documents by opening them from the File menu in an already opened window, rather than by opening a second file from the operating system's shell.
Each object in Inkscape has several designs which determine its style. All of the designs can generally be set for any object:
The style attributes are 'attached' to the source object, so after cutting/copying an object onto the clipboard, the style's attributes can be pasted to another object.
Inkscape has a comprehensive tool set to edit paths, as they are the basic element of a vector file.
Inkscape includes a feature called Live Path Effects (LPE), which can apply various modifiers to a path. Envelope Deformation is available via the Path Effects and provides a perspective effect. There are more than a dozen of these live path effects. LPE can be stacked onto a single object and have interactive live on canvas and menu-based editing of the effects.
Inkscape supports text editing for both regular multi-line text (SVG's
<text> element) and flowed text (the non-standard
<flowRoot> element, formerly proposed for SVG 1.2). As of version 0.47, flowed text is not rendered by other applications, due to a lack of an appropriate parallel
<switch> structure in the SVG document. The SVG 1.2 Tiny
<textArea> element is not supported. All text is directly editable on canvas. Text rendering is based on the Pango library, which allows Inkscape to support several complex scripts including Hebrew, Arabic, Thai, Tibetan, etc. Kerning and letter-spacing can be adjusted on a per-glyph basis using keyboard shortcuts. Putting text on path is also supported, and both the text and the path remain editable. Inkscape supports italicized and bold, as well as super- and subscript character attributes, but underlining is not yet implemented.
For a long time, unlike many other GTK+ applications, Inkscape used its own rendering library to create graphics, called
libnr. From version 0.91 on, Inkscape uses Cairo to render graphics, which brought a significant increase in rendering speed of the application.
Inkscape's primary format is Scalable Vector Graphics (SVG) version 1.1, meaning that it can create and edit with the abilities and within the constraints of this format. Any other format must either be imported (converted to SVG) or exported (converted from SVG). The SVG format is using the Cascading Style Sheet (CSS) standard internally. Inkscape's implementation of SVG and CSS standards is incomplete. Most notably, it does not support animation. Inkscape has multilingual support, particularly for complex scripts.
Inkscape can natively import the following formats:
It can import the following formats with the aid from extensions:
Inkscape can natively export the following formats:
One of the main priorities of the Inkscape project is interface consistency and usability. This includes efforts to follow the GNOME human interface guidelines, universal keyboard accessibility, and convenient on-canvas editing. Inkscape has achieved significant progress in usability since the project started.
The number of floating dialog boxes has been reduced, with their functions available using keyboard shortcuts or in the docked toolbars in the editing window. The tool bar controls at the top of the window always display the controls relevant to the current tool.
All vector transformations, scale, rotation and positioning (minus skewing) have keyboard shortcuts with consistent modifiers ( Alt transforms by 1 screen pixel at the current zoom, Shift multiplies the transformation by 10, etc.). These keys work on nodes in Node tool as well as on objects in the Selector Tool. The most common operations (such as transformations, zooming, z-order) have convenient one-key shortcuts.
Inkscape provides mouse over tooltips and status bar hints for all buttons, controls, commands, keys, and on-canvas handles. The status bar hint messages are dynamic: A given object can display up to four hints while editing it with just one tool. The hints update based on two items—the tool being used, and the type of object/node/handle being edited—text, shapes, paths, node types, etc. It comes with a complete keyboard and mouse reference (in HTML and SVG) and several interactive tutorials in SVG.
Inkscape is packaged for all major Linux distributions (including Debian, Ubuntu, Fedora, OpenSUSE).
|Version||Release date||Notable Features|
|0.35||November 2, 2003||First release of Inkscape|
|0.36||Unknown||Menu bar and context-sensitive toolbars|
|0.37||Unknown||Boolean path operations and path inset/outset|
|0.38||Unknown||Text kerning and letter spacing, multistage gradients|
|0.39||Unknown||Markers, clones, and pattern fills|
|0.40||Unknown||Multi-layer support, bitmap tracing, and text on path|
|0.41||February 10, 2005||Clone tiler tool and color tracing|
|0.42||July 26, 2005||Flowing text support, styling text spans, enhanced effects support, and the new gradient tool|
|0.43||November 19, 2005||Connector tool, collaborative editing, tablet pressure/angle sensitivity|
|0.44||June 24, 2006||Layers panel, support for clipping and masking, PDF export with transparency|
|0.45||February 5, 2007||Gaussian blur, pattern along path, new Undo History panel, improved bitmap tracing using simple interactive object extraction, color effects|
|0.46||March 24, 2008||Docking user interface, Paint Bucket, Tweak and 3D Box tools, Live Path Effects, support for most SVG filters, the ability to open PDF files, import from the Open Clip Art Library, and OpenType/PostScript and Type1 font support|
|0.47||November 24, 2009||Eraser tool (can slice paths), timed autosave, spiro splines interface for paths, auto-smooth nodes for paths, spellchecker for the text tool, new path effects like "sketch" and "hatches", new Python extensions like "alphabet soup" and "convert to Braille", basic support for SVG fonts|
|0.48||August 23, 2010||Multipath node editing, improved text tool: subscript, superscript, numerical and preset inputs for text kerning, tracking and more text enhancements, new Airbrush (Spray) tool, LaTeX export with PDF / PS / EPS, JessyInk extension for creating presentations viewable in SVG-enabled web browsers|
|0.91||January 30, 2015||Measure tool, new import/export formats, grayscale mode, alignment modes, Symbol library and support for Visio stencils, Guides can have labels, variable width strokes (PowerStroke).|
|0.92||January 4, 2017||Mesh gradients are now supported, several new path effects, default resolution changed from 90 dpi to 96 dpi to match the CSS standard. |
2Geom is a computational geometry library, originally developed for Inkscape. While developed for Inkscape it is a library that can be used from any application. It provides support for basic geometric algebra, paths, distortions, boolean operations, plotting implicit functions, non-uniform rational B-spline (NURBS) and more. 2Geom is free software released under LGPL 2.1 or MPL 1.1.
What does 'Inkscape' mean? [...] The name is made up of the two English words 'ink' and 'scape'. Ink is a common substance for drawings, and is used when the sketched work is ready to be permanently committed to paper, and thus evokes the idea that Inkscape is ready for production work. A scape is a view of a large number of objects, such as a landscape or ocean-scape, and thus alludes to the object-oriented nature of vector imagery.
|Wikimedia Commons has media related to Inkscape.|
|Wikibooks has more on the topic of: Inkscape|
|Wikiversity has learning resources about Inkscape|