'br}

'br}

## NAME

Inkscape - an SVG (Scalable Vector Graphics) editing program.

## SYNOPSIS

f(CW*(C`inkscape [options] [filename ...]*(C'

options:

-?, --help --usage -V, --version

-f, --file=FILENAME

-e, --export-png=FILENAME -a, --export-area=x0:y0:x1:y1 -C, --export-area-page -D, --export-area-drawing --export-area-snap -i, --export-id=ID -j, --export-id-only -t, --export-use-hints -b, --export-background=COLOR -y, --export-background-opacity=VALUE -d, --export-dpi=DPI -w, --export-width=WIDTH -h, --export-height=HEIGHT

-P, --export-ps=FILENAME -E, --export-eps=FILENAME -A, --export-pdf=FILENAME --export-latex

-T, --export-text-to-path --export-ignore-filters

-l, --export-plain-svg=FILENAME

-p, --print=PRINTER

-I, --query-id=ID -X, --query-x -Y, --query-y -W, --query-width -H, --query-height -S, --query-all

-x, --extension-directory

--verb-list --verb=VERB-ID --select=OBJECT-ID

--shell

-g, --with-gui -z, --without-gui

--vacuum-defs

--g-fatal-warnings

## DESCRIPTION

Inkscape is a s-1GUIs0 editor for Scalable Vector Graphics (s-1SVGs0) format drawing files, with capabilities similar to Adobe Illustrator, CorelDraw, Xara Xtreme, etc. Inkscape features include versatile shapes, bezier paths, freehand drawing, multi-line text, text on path, alpha blending, arbitrary affine transforms, gradient and pattern fills, node editing, many export and import formats including s-1PNGs0 and s-1PDF,s0 grouping, layers, live clones, and a lot more. The interface is designed to be comfortable and efficient for skilled users, while remaining conformant to s-1GNOMEs0 standards so that users familiar with other s-1GNOMEs0 applications can learn its interface rapidly.

s-1SVGs0 is a W3C standard s-1XMLs0 format for 2D vector drawing. It allows defining objects in the drawing using points, paths, and primitive shapes. Colors, fonts, stroke width, and so forth are specified as `style' attributes to these objects. The intent is that since s-1SVGs0 is a standard, and since its files are text/xml, it will be possible to use s-1SVGs0 files in a sizeable number of programs and for a wide range of uses.

Inkscape uses s-1SVGs0 as its native document format, and has the goal of becoming the most fully compliant drawing program for s-1SVGs0 files available in the Open Source community.

## OPTIONS

\fB-?\fR, \fB--help\fR 8

Show help message

\fB-V\fR, \fB--version\fR 8

Show Inkscape version and build date.

\fB-a\fR \fIx0:y0:x1:y1\fR, \fB--export-area\fR=\fIx0:y0:x1:y1\fR 8

In s-1PNGs0 export, set the exported area in s-1SVGs0 user units (anonymous length units normally used in Inkscape s-1SVGs0). The default is to export the entire document page. The point (0,0) is the lower-left corner.

\fB-C\fR, \fB--export-area-page\fR 8

In s-1PNG, PDF, PS,s0 and s-1EPSs0 export, exported area is the page. This is the default for s-1PNG, PDF,s0 and s-1PS,s0 so you don't need to specify this unless you are using --export-id to export a specific object. In s-1EPS,s0 however, this is not the default; moreover, for s-1EPS, s0 the specification of the format does not allow its bounding box to extend beyond its content. This means that when --export-area-page is used with s-1EPSs0 export, the page bounding box will be trimmed inwards to the bounding box of the content if it is smaller.

\fB-D\fR, \fB--export-area-drawing\fR 8

In s-1PNG, PDF, PS,s0 and s-1EPSs0 export, exported area is the drawing (not page), i.e. the bounding box of all objects of the document (or of the exported object if --export-id is used). With this option, the exported image will display all the visible objects of the document without margins or cropping. This is the default export area for s-1EPS.s0 For s-1PNG,s0 it can be used in combination with --export-use-hints.

\fB--export-area-snap\fR 8

For s-1PNGs0 export, snap the export area outwards to the nearest integer s-1SVGs0 user unit (px) values. If you are using the default export resolution of 90 dpi and your graphics are pixel-snapped to minimize antialiasing, this switch allows you to preserve this alignment even if you are exporting some object's bounding box (with --export-id or --export-area-drawing) which is itself not pixel-aligned.

\fB-b\fR \fI\s-1COLOR\s0\fR, \fB--export-background\fR=\fI\s-1COLOR\s0\fR 8

Background color of exported s-1PNG.s0 This may be any s-1SVGs0 supported color string, for example *(L"#ff007f*(R" or *(L"rgb(255, 0, 128)*(R". If not set, then the page color set in Inkscape in the Document Options dialog will be used (stored in the pagecolor= attribute of sodipodi:namedview).

\fB-d\fR \fI\s-1DPI\s0\fR, \fB--export-dpi\fR=\fI\s-1DPI\s0\fR 8

The resolution used for s-1PNGs0 export. It is also used for fallback rasterization of filtered objects when exporting to s-1PS, EPS,s0 or s-1PDF s0(unless you specify --export-ignore-filters to suppress rasterization). The default is 90 dpi, which corresponds to 1 s-1SVGs0 user unit (px, also called *(L"user unit*(R") exporting to 1 bitmap pixel. This value overrides the s-1DPIs0 hint if used with --export-use-hints.

\fB-e\fR \fI\s-1FILENAME\s0\fR, \fB--export-png\fR=\fI\s-1FILENAME\s0\fR 8

Specify the filename for s-1PNGs0 export. If it already exists, the file will be overwritten without asking.

\fB-f\fR \fI\s-1FILENAME\s0\fR, \fB--file\fR=\fI\s-1FILENAME\s0\fR 8

Open specified document(s). Option string may be omitted, i.e. you can list the filenames without -f.

\fB-g\fR, \fB--with-gui\fR 8

Try to use the s-1GUI s0(on Unix, use the X server even if f(CW$DISPLAY is not set).

\fB-h\fR \fI\s-1HEIGHT\s0\fR, \fB--export-height\fR=\fI\s-1HEIGHT\s0\fR 8

The height of generated bitmap in pixels. This value overrides the --export-dpi setting (or the s-1DPIs0 hint if used with --export-use-hints).

\fB-i\fR \fI\s-1ID\s0\fR, \fB--export-id\fR=\fI\s-1ID\s0\fR 8

For s-1PNG, PS, EPS,s0 and s-1PDFs0 export, the id attribute value of the object that you want to export from the document; all other objects are not exported. By default the exported area is the bounding box of the object; you can override this using --export-area (s-1PNGs0 only) or --export-area-page.

\fB-j\fR, \fB--export-id-only\fR 8

Only export to s-1PNGs0 the object whose id is given in --export-id. All other objects are hidden and won't show in export even if they overlay the exported object. Without --export-id, this option is ignored. For s-1PDFs0 export, this is the default, so this option has no effect.

\fB-l\fR, \fB--export-plain-svg\fR=\fI\s-1FILENAME\s0\fR 8

Export document(s) to plain s-1SVGs0 format, without sodipodi: or inkscape: namespaces and without s-1RDFs0 metadata.

\fB-x\fR, \fB--extension-directory\fR 8

Lists the current extension directory that Inkscape is configured to use and then exits. This is used for external extension to use the same configuration as the original Inkscape installation.

\fB--verb-list\fR 8

Lists all the verbs that are available in Inkscape by s-1ID. s0 This s-1IDs0 can be used in defining keymaps or menus. It can also be used with the --verb command line option.

\fB--verb\fR=\fIVERB-ID\fR, \fB--select\fR=\fIOBJECT-ID\fR 8

These two options work together to provide some basic scripting for Inkscape from the command line. They both can occur as many times as needed on the command line and are executed in order on every document that is specified.

The --verb command will execute a specific verb as if it was called from a menu or button. Dialogs will appear if that is part of the verb. To get a list of the verb IDs available, use the --verb-list command line option.

The --select command will cause objects that have the s-1IDs0 specified to be selected. This allows various verbs to act upon them. To remove all the selections use --verb=EditDeselect. The object IDs available are dependent on the document specified to load.

\fB-p\fR \fI\s-1PRINTER\s0\fR, \fB--print\fR=\fI\s-1PRINTER\s0\fR 8

Print document(s) to the specified printer using `lpr -P s-1PRINTERs0'. Alternatively, use `| s-1COMMANDs0' to specify a different command to pipe to, or use `> s-1FILENAMEs0' to write the PostScript output to a file instead of printing. Remember to do appropriate quoting for your shell, e.g.

inkscape --print='| ps2pdf - mydoc.pdf' mydoc.svg

\fB-t\fR, \fB--export-use-hints\fR 8

Use export filename and s-1DPIs0 hints stored in the exported object (only with --export-id). These hints are set automatically when you export selection from within Inkscape. So, for example, if you export a shape with id=*(L"path231*(R" as /home/me/shape.png at 300 dpi from document.svg using Inkscape s-1GUI,s0 and save the document, then later you will be able to reexport that shape to the same file with the same resolution simply with

inkscape -i path231 -t document.svg

If you use --export-dpi, --export-width, or --export-height with this option, then the s-1DPIs0 hint will be ignored and the value from the command line will be used. If you use --export-png with this option, then the filename hint will be ignored and the filename from the command line will be used.

\fB-w\fR \fI\s-1WIDTH\s0\fR, \fB--export-width\fR=\fI\s-1WIDTH\s0\fR 8

The width of generated bitmap in pixels. This value overrides the --export-dpi setting (or the s-1DPIs0 hint if used with --export-use-hints).

\fB-y\fR \fI\s-1VALUE\s0\fR, \fB--export-background-opacity\fR=\fI\s-1VALUE\s0\fR 8

Opacity of the background of exported s-1PNG.s0 This may be a value either between 0.0 and 1.0 (0.0 meaning full transparency, 1.0 full opacity) or greater than 1 up to 255 (255 meaning full opacity). If not set and the -b option is not used, then the page opacity set in Inkscape in the Document Options dialog will be used (stored in the inkscape:pageopacity= attribute of sodipodi:namedview). If not set but the -b option is used, then the value of 255 (full opacity) will be used.

\fB-P\fR \fI\s-1FILENAME\s0\fR, \fB--export-ps\fR=\fI\s-1FILENAME\s0\fR 8

Export document(s) to PostScript format. Note that PostScript does not support transparency, so any transparent objects in the original s-1SVGs0 will be automatically rasterized. Used fonts are subset and embedded. The default export area is page; you can set it to drawing by --export-area-drawing. You can specify --export-id to export a single object (all other are hidden); in that case export area is that object's bounding box, but can be set to page by --export-area-page.

\fB-E\fR \fI\s-1FILENAME\s0\fR, \fB--export-eps\fR=\fI\s-1FILENAME\s0\fR 8

Export document(s) to Encapsulated PostScript format. Note that PostScript does not support transparency, so any transparent objects in the original s-1SVGs0 will be automatically rasterized. Used fonts are subset and embedded. The default export area is drawing; you can set it to page, however see --export-area-page for applicable limitation. You can specify --export-id to export a single object (all other are hidden).

\fB-A\fR \fI\s-1FILENAME\s0\fR, \fB--export-pdf\fR=\fI\s-1FILENAME\s0\fR 8

Export document(s) to s-1PDFs0 format. This format preserves the transparency in the original s-1SVG.s0 Used fonts are subset and embedded. The default export area is page; you can set it to drawing by --export-area-drawing. You can specify --export-id to export a single object (all other are hidden); in that case export area is that object's bounding box, but can be set to page by --export-area-page.

\fB--export-latex\fR 8

(for s-1PS, EPS,s0 and s-1PDFs0 export) Used for creating images for LaTeX documents, where the image's text is typeset by LaTeX. When exporting to s-1PDF/PS/EPSs0 format, this option splits the output into a s-1PDF/PS/EPSs0 file (e.g. as specified by --export-pdf) and a LaTeX file. Text will not be output in the s-1PDF/PS/EPSs0 file, but instead will appear in the LaTeX file. This LaTeX file includes the s-1PDF/PS/EPS.s0 Inputting (einput{image.tex}) the LaTeX file in your LaTeX document will show the image and all text will be typeset by LaTeX. See the resulting LaTeX file for more information. Also see GNUPlot's `epslatex' output terminal.

\fB-T\fR, \fB--export-text-to-path\fR 8

Convert text objects to paths on export, where applicable (for s-1PS, EPS,s0 and s-1PDFs0 export).

\fB--export-ignore-filters\fR 8

Export filtered objects (e.g. those with blur) as vectors, ignoring the filters (for s-1PS, EPS,s0 and s-1PDFs0 export). By default, all filtered objects are rasterized at --export-dpi (default 90 dpi), preserving the appearance.

\fB-I\fR, \fB--query-id\fR 8

Set the s-1IDs0 of the object whose dimensions are queried. If not set, query options will return the dimensions of the drawing (i.e. all document objects), not the page or viewbox

\fB-X\fR, \fB--query-x\fR 8

Query the X coordinate of the drawing or, if specified, of the object with --query-id. The returned value is in px (s-1SVGs0 user units).

\fB-Y\fR, \fB--query-y\fR 8

Query the Y coordinate of the drawing or, if specified, of the object with --query-id. The returned value is in px (s-1SVGs0 user units).

\fB-W\fR, \fB--query-width\fR 8

Query the width of the drawing or, if specified, of the object with --query-id. The returned value is in px (s-1SVGs0 user units).

\fB-H\fR, \fB--query-height\fR 8

Query the height of the drawing or, if specified, of the object with --query-id. The returned value is in px (s-1SVGs0 user units).

\fB-S\fR, \fB--query-all\fR 8

Prints a comma delimited listing of all objects in the s-1SVGs0 document with IDs defined, along with their x, y, width, and height values.

\fB--shell\fR 8

With this parameter, Inkscape will enter an interactive command line shell mode. In this mode, you type in commands at the prompt and Inkscape executes them, without you having to run a new copy of Inkscape for each command. This feature is mostly useful for scripting and server uses: it adds no new capabilities but allows you to improve the speed and memory requirements of any script that repeatedly calls Inkscape to perform command line tasks (such as export or conversions). Each command in shell mode must be a complete valid Inkscape command line but without the Inkscape program name, for example *(L"file.svg --export-pdf=file.pdf*(R".

\fB--vacuum-defs\fR 8

Remove all unused items from the <lt>defs<gt> section of the s-1SVGs0 file. If this option is invoked in conjunction with --export-plain-svg, only the exported file will be affected. If it is used alone, the specified file will be modified in place.

\fB-z\fR, \fB--without-gui\fR 8

Do not open the s-1GUI s0(on Unix, do not use X server); only process the files from console. This is assumed for -p, -e, -l, and --vacuum-defs options.

\fB--g-fatal-warnings\fR 8

This standard s-1GTKs0 option forces any warnings, usually harmless, to cause Inkscape to abort (useful for debugging).

\fB--usage\fR 8

Display a brief usage message.

## CONFIGURATION

The main configuration file is located in ~/.config/inkscape/preferences.xml; it stores a variety of customization settings that you can change in Inkscape (mostly in the Inkscape Preferences dialog). Also in the subdirectories there, you can place your own:

f(CB$HOME/.config/inkscape/extensions/ - extension effects.

f(CB$HOME/.config/inkscape/icons/ - icons.

f(CB$HOME/.config/inkscape/keys/ - keyboard maps.

f(CB$HOME/.config/inkscape/templates/ - new file templates.

## DIAGNOSTICS

The program returns zero on success or non-zero on failure.

A variety of error messages and warnings may be printed to s-1STDERRs0 or s-1STDOUT. s0 If the program behaves erratically with a particular s-1SVGs0 file or crashes, it is useful to look at this output for clues.

## EXAMPLES

While obviously Inkscape is primarily intended as a s-1GUIs0 application, it can be used for doing s-1SVGs0 processing on the command line as well.

Open an s-1SVGs0 file in the s-1GUI:s0

inkscape filename.svg

Print an s-1SVGs0 file from the command line:

inkscape filename.svg -p *(Aq| lpr*(Aq

Export an s-1SVGs0 file into s-1PNGs0 with the default resolution of 90dpi (one s-1SVGs0 user unit translates to one bitmap pixel):

inkscape filename.svg --export-png=filename.png

Same, but force the s-1PNGs0 file to be 600x400 pixels:

inkscape filename.svg --export-png=filename.png -w600 -h400

Same, but export the drawing (bounding box of all objects), not the page:

inkscape filename.svg --export-png=filename.png --export-area-drawing

Export to s-1PNGs0 the object with id=*(L"text1555*(R", using the output filename and the resolution that were used for that object last time when it was exported from the s-1GUI:s0

inkscape filename.svg --export-id=text1555 --export-use-hints

Same, but use the default 90 dpi resolution, specify the filename, and snap the exported area outwards to the nearest whole s-1SVGs0 user unit values (to preserve pixel-alignment of objects and thus minimize aliasing):

inkscape filename.svg --export-id=text1555 --export-png=text.png --export-area-snap

Convert an Inkscape s-1SVGs0 document to plain s-1SVG:s0

inkscape filename1.svg --export-plain-svg=filename2.svg

Convert an s-1SVGs0 document to s-1EPS,s0 converting all texts to paths:

inkscape filename.svg --export-eps=filename.eps --export-text-to-path

Query the width of the object with id=*(L"text1555*(R":

inkscape filename.svg --query-width --query-id text1555

Duplicate the object with id=*(L"path1555*(R", rotate the duplicate 90 degrees, save s-1SVG,s0 and quit:

inkscape filename.svg --select=path1555 --verb=EditDuplicate --verb=ObjectRotate90 --verb=FileSave --verb=FileClose

## ENVIRONMENT

s-1DISPLAYs0 to get the default host and display number.

s-1TMPDIRs0 to set the default path of the directory to use for temporary files. The directory must exist.

## THEMES

To load different icons sets instead of the default f(CB$PREFIX/share/inkscape/icons/icons.svg file, the directory f(CB$HOME/.config/inkscape/icons/ is used. Icons are loaded by name (e.g. fill_none.svg), or if not found, then from icons.svg. If the icon is not loaded from either of those locations, it falls back to the default system location.

The needed icons are loaded from s-1SVGs0 files by searching for the s-1SVGs0 id with the matching icon name. (For example, to load the *(L"fill_none*(R" icon from a file, the bounding box seen for s-1SVGs0 id *(L"fill_none*(R" is rendered as the icon, whether it comes from fill_none.svg or icons.svg.)

## OTHER INFO

The canonical place to find Inkscape info is at http://www.inkscape.org/. The website has news, documentation, tutorials, examples, mailing list archives, the latest released version of the program, bugs and feature requests databases, forums, and more.

## SEE ALSO

potrace, cairo, rsvg|(1), batik, ghostscript, pstoedit.

s-1SVGs0 compliance test suite: http://www.w3.org/Graphics/SVG/Test/

s-1SVGs0 validator: http://jiggles.w3.org/svgvalidator/

Scalable Vector Graphics (s-1SVGs0) 1.1 Specification W3C Recommendation 14 January 2003 <http://www.w3.org/TR/SVG11/>

Scalable Vector Graphics (s-1SVGs0) 1.2 Specification W3C Working Draft 13 November 2003 <http://www.w3.org/TR/SVG12/>

s-1SVG 1.1/1.2/2.0s0 Requirements W3C Working Draft 22 April 2002 <http://www.w3.org/TR/SVG2Reqs/>

Document Object Model (s-1DOMs0): Level 2 Core Arnaud Le Hors et al editors, W3C <http://www.w3.org/TR/DOM-Level-2-Core/>

## GUI NOTES

To learn Inkscape's s-1GUIs0 operation, read the tutorials in Help > Tutorials.

Apart from s-1SVG,s0 Inkscape can import (File > Import) most bitmap formats (s-1PNG, BMP, JPG, XPM, GIF,s0 etc.), plain text (requires Perl), s-1PSs0 and s-1EPS s0(requires Ghostscript), s-1PDF s0 and s-1AIs0 format (s-1AIs0 version 9.0 or newer).

Inkscape exports 32-bit s-1PNGs0 images (File > Export) as well as s-1AI, PS, EPS, PDF, DXF, s0 and several other formats via File > Save as.

Inkscape can use the pressure and tilt of a graphic tablet pen for width, angle, and force of action of several tools, including the Calligraphic pen.

Inkscape includes a s-1GUIs0 front-end to the Potrace bitmap tracing engine (http://potrace.sf.net) which is embedded into Inkscape.

Inkscape can use external scripts (stdin-to-stdout filters) that are represented by commands in the Extensions menu. A script can have a s-1GUIs0 dialog for setting various parameters and can get the IDs of the selected objects on which to act via the command line. Inkscape comes with an assortment of effects written in Python.

## KEYBINDINGS

To get a complete list of keyboard and mouse shortcuts, view doc/keys.html, or use the Keys and Mouse command in Help menu.

## BUGS

Many bugs are known; please refer to the website (inkscape.org) for reviewing the reported ones and to report newly found issues. See also the Known Issues section in the Release Notes for your version (file `s-1NEWSs0').

## AUTHORS

This codebase owes its existence to a large number of contributors throughout its various incarnations. The following list is certainly incomplete, but serves to recognize the many shoulders on which this application sits:

Maximilian Albert, Josh Andler, Tavmjong Bah, Pierre Barbry-Blot, Jean-François Barraud, Bill Baxter, John Beard, John Bintz, Arpad Biro, Nicholas Bishop, Joshua L. Blocher, Hanno Böck, Henrik Bohre, Boldewyn, Daniel Borgmann, Bastien Bouclet, Gustav Broberg, Christopher Brown, Hans Breuer, Marcus Brubaker, Luca Bruno, Nicu Buculei, Bulia Byak, Pierre Caclin, Ian Caldwell, Gail Carmichael, Ed Catmur, Chema Celorio, Johan Ceuppens, Zbigniew Chyla, Alexander Clausen, John Cliff, Kees Cook, Ben Cromwell, Robert Crosbie, Jon Cruz, Aurélie De-Cooman, Milosz Derezynski, Daniel Díaz, Bruno Dilly, Larry Doolittle, Tim Dwyer, Maxim V. Dziumanenko, Johan Engelen, Miklos Erdelyi, Ulf Erikson, Noé Falzon, Frank Felfe, Andrew Fitzsimon, Edward Flick, Marcin Floryan, Fred, Ben Fowler, Cedric Gemy, Steren Giannini, Olivier Gondouin, Ted Gould, Toine de Greef, Michael Grosberg, Bryce Harrington, Dale Harvey, Aurélio Adnauer Heckert, Carl Hetherington, Jos Hirth, Hannes Hochreiner, Thomas Holder, Joel Holdsworth, Alan Horkan, Karl Ove Hufthammer, Richard Hughes, Nathan Hurst, inductiveload, Thomas Ingham, Jean-Olivier Irisson, Bob Jamison, jEsuSdA, Lauris Kaplinski, Lynn Kerby, Niko Kiirala, James Kilfiger, Jason Kivlighn, Adrian Knoth, Krzysztof Kosiński, Petr Kovar, Benoît Lavorata, Alex Leone, Julien Leray, Raph Levien, Diederik van Lierop, Nicklas Lindgren, Vitaly Lipatov, Ivan Louette, Pierre-Antoine Marc, Aurel-Aimé Marmion, Colin Marquardt, Dmitry G. Mastrukov, Matiphas, Michael Meeks, Federico Mena, MenTaLguY, Aubanel Monnier, Vincent Montagne, Tim Mooney, Derek P. Moore, Peter Moulder, Jörg Müller, Yukihiro Nakai, Victor Navez, Christian Neumair, Andreas Nilsson, Mitsuru Oka, Marten Owens, Alvin Penner, Jon Phillips, Zdenko Podobny, Alexandre Prokoudine, Jean-René Reinhard, Alexey Remizov, Frederic Rodrigo, Hugo Rodrigues, Juarez Rudsatz, Xavier Conde Rueda, Felipe Corrêa da Silva Sanches, Christian Schaller, Marco Scholten, Tom von Schwerdtner, Shivaken, Danilo Šegan, Michael Sloan, John Smith, Boštjan Špetič, Aaron Spike, Kaushik Sridharan, Ralf Stephan, Dariusz Stojek, Martin Sucha, ~suv, Pat Suwalski, Adib Taraben, Hugh Tebby, Jonas Termeau, David Turner, Andre Twupack, Aleksandar Urošević, Alex Valavanis, Lucas Vieites, Michael Wybrow, Daniel Yacob, David Yip, Masatake Yamato

This man page was put together by Bryce Harrington <brycehar@bryceharrington.com>.

## HISTORY

The codebase that would become Inkscape began life in 1999 as the program Gill, the s-1GNOMEs0 Illustrator application, created by Raph Levien. The stated objective for Gill was to eventually support all of s-1SVG. s0 Raph implemented the PostScript bezier imaging model, including stroking and filling, line cap style, line join style, text, etc. Raph's Gill page is at http://www.levien.com/svg/. Work on Gill appears to have slowed or ceased in 2000.

The next incarnation of the codebase was to become the highly popular program Sodipodi, led by Lauris Kaplinski. The codebase was turned into a powerful illustration program over the course of several year's work, adding several new features, multi-lingual support, porting to Windows and other operating systems, and eliminating dependencies.

Inkscape was formed in 2003 by four active Sodipodi developers, Bryce Harrington, MenTaLguY, Nathan Hurst, and Ted Gould, wanting to take a different direction with the codebase in terms of focus on s-1SVGs0 compliance, interface look-and-feel, and a desire to open development opportunities to more participants. The project progressed rapidly, gaining a number of very active contributors and features.

Much work in the early days of the project focused on code stabilization and internationalization. The original renderer inherited from Sodipodi was laced with a number of mathematical corner cases which led to unexpected crashes when the program was pushed beyond routine uses; this renderer was replaced with Livarot which, while not perfect either, was significantly less error prone. The project also adopted a practice of committing code frequently, and encouraging users to run developmental snapshots of the program; this helped identify new bugs swiftly, and ensure it was easy for users to verify the fixes. As a result, Inkscape releases have generally earned a reputation for being robust and reliable.

Similarly, efforts were taken to internationalize and localize the interface, which has helped the program gain contributors worldwide.

Inkscape has had a beneficial impact on the visual attractiveness of Open Source in general, by providing a tool for creating and sharing icons, splash screens, website art, and so on. In a way, despite being *(L"just an drawing program*(R", Inkscape has played an important role in making Open Source more visually stimulating to larger audiences.

## COPYRIGHT AND LICENSE

Copyright (C) 1999[en]2010 by Authors.

Inkscape is free software; you can redistribute it and/or modify it under the terms of the s-1GPL.s0