Inkscape
Inkscape 0.48.1 |
|
| Developer(s) | The Inkscape Team |
|---|---|
| Stable release | 0.48.2 / September 6, 2011 |
| Written in | C++ (using gtkmm) |
| Operating system | Microsoft Windows, Mac OS X and Unix-like |
| Platform | GTK+ |
| Size | 35.7 MB |
| Available in | 40 languages |
| Type | Vector graphics editor |
| License | GNU General Public License |
| Website | Inkscape.org |
Inkscape is a free software vector graphics editor, licensed under the GNU General Public License. Its goal is to implement full support for the Scalable Vector Graphics (SVG) 1.1 standard.[1]
Inkscape is cross-platform[2] and runs on Mac OS X (typically under X11, although the underlying GTK+ toolkit can be compiled to run natively under Quartz),[3] Unix-like operating systems, and Microsoft Windows. Inkscape's implementation of SVG and CSS standards is incomplete. Most notably, it does not yet support animation. Inkscape has multi-lingual support, particularly for complex scripts, something currently lacking in most commercial vector graphics applications. The word Inkscape is a portmanteau of the words ink and landscape.[4]
Contents |
[edit] History
Inkscape began in 2003 as a code fork of the Sodipodi project. Sodipodi, developed since 1999, was itself based on Raph Levien's Gill (Gnome Illustration Application).
The fork was led by a team of four former Sodipodi developers (Ted Gould, Bryce Harrington, Nathan Hurst, and MenTaLguY) who 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 creating a general-purpose vector graphics editor, possibly at the expense of SVG.[5]
Since the fork, Inkscape has changed from using the C programming language to C++; changed to the GTK+ toolkit C++ bindings (gtkmm); redesigned the user interface and added a number of new features. Its implementation of the SVG standard has shown gradual improvement, but still is incomplete.[6]
Rather than top-down governance, its developers strive to encourage an egalitarian culture where authority stems from an individual developer's abilities and active involvement in the project. As a result, the project places special emphasis on giving full access to its source code repository to all active developers, and on participation in the larger open source community (often in the form of inter-project initiatives such as the Create Project, Libre Graphics Meeting and spinoff projects like the Open Clip Art Library). While the project founders are still well-represented in the decision-making process, many newcomers have also come to play prominent roles.
After Xara announced plans to release their (Linux version only) drawing application Xara Xtreme to open source,[7] they expressed interest in working with Inkscape to find ways the two projects can share code, coordinate efforts, and make open source graphics superior to anything available in the proprietary world.[citation needed]
Since 2005, Inkscape has participated in Google's Summer of Code program.[8]
Up until the end of November 2007, Inkscape's bug tracking system was hosted on Sourceforge. Thereafter it was moved to Launchpad.[9]
[edit] Features
[edit] Object creation
The basic objects in Inkscape are:[citation needed]
- Paths—made with the Pencil tool, which allows freehand drawing of paths; the Pen tool, which allows the user to create a Bezier spline node-by-node curves and lines in the same path; the Calligraphy tool, which can be used to draw freehand calligraphic or brush-like strokes, or the Paint Bucket tool, which fills bounded areas of the image. The Calligraphy tool optionally can use pressure and tilt readings from graphic tablets. The Paint Bucket tool works optically rather than geometrically and can assist image tracing. The Spray Tool creates copies or clones of one or several items, select the item(s), then to Spray click on the canvas, move the mouse or scroll the mouse wheel.
- Rectangles—created using the Rectangle tool. Corners of rectangles can be rounded.
- 3D Boxes—created using the 3D Box tool. The boxes have adjustable XYZ perspectives and configurable values for vanishing points. 3D boxes are in fact groups of paths and after ungrouping can be further modified.
- Ellipses—created using the Ellipse tool. Ellipses and Circles can be transformed into arcs (i.e.,open half circles) and segments (i.e., closed half circle).
- Stars/polygons—created using the Star and Polygon tool. Multi-pointed (3 to 1,024 points) stars with two control (base and tip) handles can be used to emulate spirographs. Polygons with one control (base) handle can be used to create items based on the number of sides hexagons, pentagons, etc.
- Spirals—created using the Spiral tool, have a configurable number of turns (revolutions), divergence (density/sparseness of outer turns), inner radius (roll out from center)
- Clones—Clones are child objects of an Original (parent) object(s) which can have different transformations applied than the original object. Clones can be created via Copies, the Spray tool or a Menu interface. Transformations include; size, position, rotation, blur, opacity, color and symmetry (layout). Clones are updated live whenever the original object changes.
- Text—created with the Text tool. Texts can use any of the system fonts, and can be converted to paths, Unicode characters fonts are supported. Bold, Oblique (Italic), Alignments (left, right, center, full), Superscript, Subscript, Vertical and Horizontal text are implemented. All text objects can be transformed via Line Spacing, Letter Spacing, Word Spacing, Horizontal Kerning, Vertical Shift and Character Rotation either manually or via menu settings. Text can be put along a path, flowed into a shape or spell checked. Bulleted lists, numbered lists, indentations, and underlined text are not available as of version 0.48.
- Raster/bitmap images—Inkscape supports the export of bitmap images (via PNG formatting) of the whole drawing (all objects),the current selection, objects within the page outline and custom coordinates. Imports bitmap images, >File >Import allows the user to select either 'embedd' or 'link' the image into the file. Pasting (v0.48) images into inkscape automatically embedds images into the file. Inkscape supports importing and pasting of PNG, JPEG and BMP. (See com:Cat:SVG/raster for examples of embedded images on Wikimedia Commons). Images can also be traced (bitmap to vector) using the Potrace >Path >Trace Bitmap... feature.
Additionally, there are more specialized objects:[citation needed]
- Spiro Splines (Swirls), This type of path creates very nice silky smooth curves, similar to what you see in gothic, floral, desktop and tattoo designs.
- Connector based paths, often used in Flow Charts, Diagrams or Schematics.
- There is a Render Extension that will render objects onto your file via menu settings, examples include barcodes, calendars, grids, gears, spirographs, spheres and more.
[edit] Object manipulation
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 via 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.[citation needed]
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. Z-order of objects can be managed either using layers, or by manually moving the object up and down in the Z stack. Layers can be locked or hidden, preventing modifying and accidental selection.[citation needed]
A special tool, Create Tiled Clones, is provided to create symmetrical or grid-like drawings using various plane symmetries.[citation needed]
Objects can be cut, copied and pasted using a clipboard. However, as of version 0.46, Inkscape uses an internal variable rather than the 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.[citation needed]
[edit] Styling objects
Each object in Inkscape has several attributes which determine its style. All of the attributes can generally be set for any object:
- Fill—can be a solid color, a linear or radial gradient, a pattern, custom swatch, inherited from a parent object. The color selector has RGBA, HSL, Wheel and CMYK color options available, but all selected colors are currently converted to RGBA. Gradients can have multiple stops, radial supports optional direct or reflected gradients. All colors can have an alpha value specified. Patterns can be constructed from any collection of objects, or one of the several supplied stock patterns can be used.
- Stroke fill—can have the same values as fill, but is applied to the object's stroke.
- Stroke style—can vary in width, join styles of miter (configurable limit), rounded or bevel, cap styles of offset, round or full. Dashed strokes with configurable offsets are supported. Start, mid and end markers, of various types (arrows, dots, diamonds, etc...) are supported.
- Opacity—specifies alpha value for all fill colors. Each object has a distinct opacity value, which e.g. can be used to make groups transparent.
- Filters—there is an easy-to-use slider for Gaussian blur for each object. Categorized filter stacks using the SVG filters can be constructed using the Filters dialog.
Appearance of objects can be further changed by using masks and clipping paths, which can be created from arbitrary objects, including groups.
The style attributes are 'attached' to the source object, so after cutting/copying an object into the clipboard, the style's attributes can be pasted to another object as >Paste >Style.
[edit] Operations on paths
Inkscape has a comprehensive tool set to edit paths, as they are the basic element of a vector file. The Node tool allows editing single or multiple paths on single or multiple node levels by editing the position of nodes and control points of Bezier paths or Spiro curves. Path segments can be adjusted by dragging them. When multiple nodes are selected, they can be moved, scaled and rotated using keyboard shortcut or mouse controls. Additional nodes can be inserted into paths at arbitrary or even placements, and an effect can be used to insert nodes at predefined intervals. When nodes are deleted, the handles on remaining ones are adjusted to preserve the original shape as closely as possible.[citation needed]
Tweak tool is provided for more high-level, whole object(s) or node editing regions (parts) of an object. It can push, repel/attract, randomize positioning, shrink/enlarge, rotate, copy/delete selected whole objects. With parts of a path you can push, shrink/enlarge, repel/attract, roughen edges, blur and color. Nodes are dynamically created and deleted when needed while using this tool, so it can also be used on simple paths without pre-processing.[citation needed]
Other possible high-level operations on paths include offsetting or insetting a path by a fixed amount. Creating an unlinked dynamic offset of a path which can be fine tuned using the Node tool. Creating a linked offset of a path will update whenever the original is modified. Object converting another shape like a spiral or text into a path, converting the stroke of a shape to a path. Simplifying a path to contain less nodes while preserving the shape, or performing Boolean operations like union, difference, intersection or exclusion on them.[citation needed]
Recent releases include a feature called Live Path Effects, 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.[citation needed]
[edit] Text support
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.[citation needed]
[edit] Rendering
Unlike many other GTK+ applications, Inkscape uses its own rendering library to create graphics, called libnr. libnr can render images at up to 256x zoom with anti-aliasing, and update graphics during transformations. There are alternative outline and no filter viewer modes which can considerably increase responsiveness when working with complex drawings. Inkscape uses Cairo to render in outline mode (as of version 0.46).[10]
[edit] Miscellaneous
- XML GUI Tree Editor, user-friendly menu provides an easy to use direct manipulation of the SVG XML structure.
- Editing of RDF (Resource Description Framework) a W3C metadata information model
- Command-line interface, exposes format conversion functions and full-featured GUI scripting.
- More than forty interface languages.
- Extensible to new file formats, effects and other features.
- Mathematical diagramming, with various uses of LaTeX.[11]
- Experimental support for scripting.
[edit] Interface and usability
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.[citation needed]
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 displays the controls relevant to the current tool.[citation needed]
All vector transformations, scale, rotation and positioning (minus skewing) have keyboard shortcuts with consistent modifiers, e.g., 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.[citation needed]
Inkscape provides floating tooltips and status bar hints for all buttons, controls, commands, keys, and on-canvas handles. The 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.[citation needed]
The interface of Sodipodi (Inkscape's predecessor) was based on those of CorelDRAW and GIMP. The Inkscape interface has been influenced by that of Xara Xtreme.
[edit] Compatibility
With Adobe Illustrator : Inkscape's native format is SVG, and it's also a format supported by AI, but the two implementations are not 100% compatible. Inkscape can also export into PS, EPS and PDF.[12]
[edit] Version history
- Version 0.48.2 (September 6, 2011) was a bugfix release.
- Version 0.48.1 (March 2, 2011) was a bugfix release.
- Version 0.48 (August 23, 2010) The highlights of this release are: 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
- Version 0.47 (November 24, 2009) added an 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", some basic support for SVG fonts, improved PostScript support, and other minor modifications.
- Version 0.46 (March 24, 2008) added new docks based user interface, Paint Bucket, Tweak and 3D Box tools, Live Path Effects, support for most SVG filters, the ability to open PDF files, and OpenType/PostScript and Type1 font support fixed.
- Version 0.45.1 (March 23, 2007) was a bugfix release.
- Version 0.45 (February 5, 2007) has support for Gaussian blur, pattern along path, new Undo History dialog, improved bitmap tracing using Simple Interactive Object Extraction, a set of color effects, and many other minor modifications to existing features.
- Version 0.44.1 was a bugfix release.
- Version 0.44 (June 24, 2006) added a Layers dialog, support for clipping and masking, improved PDF export with transparency, and performance improvements.
- Version 0.43 (November 19, 2005) added Connector tool, collaborative editing, tablet pressure/angle sensitivity, and Node tool enhancements.
- Version 0.42 (July 26, 2005) added flowed text support, styling text spans, enhanced effects support, and the new gradient tool.
- Version 0.41 (February 10, 2005) added the clone tiler tool and color tracing, plus many bugfixes.
- Version 0.40 added support for layers, bitmap tracing, and text on path.
- Version 0.39 was the first release to use the Pango library, bringing better support for more languages, as well as support for markers, clones, and pattern fills.
- Version 0.38 was a bug fix release, but it also featured text kerning and letterspacing, multistage gradients, and many usability enhancements.
- Version 0.37 saw the addition of boolean path operations and path inset/outset.
- Version 0.36 was the first release with the reorganized UI using a menu bar and docked context-sensitive toolbars in the document window.
- Version 0.35 (November 2, 2003) was the first release of Inkscape, very similar to Sodipodi version 0.32.
[edit] See also
- Comparison of vector graphics editors
- Create Project
- Libre Graphics Meeting
- List of vector graphics editors
- Open Clip Art Library
- Open Font Library
- sK1
- Skencil
- Sodipodi
- Xara Xtreme
[edit] References
- ^ "Roadmap—Inkscape Wiki". Inkscape Wiki. http://wiki.inkscape.org/wiki/index.php/Roadmap. Retrieved 2011-04-22.
- ^ "FAQ—Inkscape Wiki". Inkscape Wiki. http://wiki.inkscape.org/wiki/index.php/FAQ#What_platforms_does_Inkscape_run_on.3F. Retrieved 2009-10-22.
- ^ "Open Source Macintosh Packages". Flyn Computing. 2006-12-29. http://www.flyn.org/apple/index.html. Retrieved 2009-10-22.
- ^ "FAQ - Inkscape Wiki". http://wiki.inkscape.org/wiki/index.php/FAQ#What_does_.27Inkscape.27_mean.3F. Retrieved 2010-12-19.
- ^ "Initial announcement of Inkscape fork on sodipodi mailing list". http://sourceforge.net/mailarchive/message.php?msg_id=Pine.LNX.4.33.0311052315010.15937-100000%40osdlab.pdx.osdl.net.
- ^ Wiki.inkscape.org
- ^ Libre Graphics Meeting 2007—Montréal, Québec, Canada
- ^ "Google Summer of Code entry in the Inkscape developers' wiki". http://wiki.inkscape.org/wiki/index.php/Googles_Summer_Of_Code.
- ^ "Inkscape moving to Launchpad". http://news.launchpad.net/general/inkscape-moving-to-launchpad.
- ^ "Release notes/0.46—Inkscape Wiki". Inkscape Wiki. http://wiki.inkscape.org/wiki/index.php/ReleaseNotes046#Speed_and_interactivity. Retrieved 2009-10-22.
- ^ "Extension repository—Inkscape Wiki". Inkscape Wiki. http://wiki.inkscape.org/wiki/index.php/ExtensionsRepository. Retrieved 2009-10-22.
- ^ "PDF Creation Software". PDF Bible. http://pdf-editor.co/software-2/pdf-creation-software/. Retrieved 15 November 2011.
[edit] Bibliography
- Benjamin, Donna (February 22, 2010), Beginning Inkscape (1st ed.), Apress, pp. 400, ISBN 1430225130, http://www.apress.com/book/view/9781430225133
- Kirsanov, Dmitry (September 29, 2009), The Book of Inkscape: The Definitive Guide to the Free Graphics Editor (1st ed.), No Starch Press, pp. 476, ISBN 1593271816, http://nostarch.com/inkscape.htm
- Bah, Tavmjong (November 16, 2009), Inkscape: Guide to a Vector Drawing Program (3rd ed.), Prentice Hall, pp. 480, ISBN 0137051735, http://www.informit.com/store/product.aspx?isbn=0137051735
[edit] External links
| Wikimedia Commons has media related to: Inkscape |
| Wikibooks has more on the topic of |
| Wikiversity has learning materials about Inkscape |
- Inkscape official website.
- Inkscape at Launchpad
- Inkscape review: It's all in the UI
- Inkscape on fossfor.us
- FLOSS Weekly—76: Inkscape—Podcast with Jon A. Cruz, core developer and board member, and Ted Gould, one of the founding developers of the Inkscape project.
|
||||||||||||||||||||||
|
|||||||||||