Code

remove useless and half-broken slideshow mode in favor of inkview
[inkscape.git] / inkscape.pod
2 =head1 NAME
4 Inkscape - an SVG (Scalable Vector Graphics) editing program.
6 =head1 SYNOPSIS
8 C<inkscape [options] [filename ...]>
10 options:
12     -?, --help        
13         --usage       
14     -V, --version
16     -f, --file=FILENAME               
18     -e, --export-png=FILENAME         
19     -a, --export-area=x0:y0:x1:y1     
20     -C, --export-area-canvas
21     -D, --export-area-drawing
22         --export-area-snap
23     -i, --export-id=ID     
24     -j, --export-id-only     
25     -t, --export-use-hints
26     -b, --export-background=COLOR     
27     -y, --export-background-opacity=VALUE     
28     -d, --export-dpi=DPI              
29     -w, --export-width=WIDTH          
30     -h, --export-height=HEIGHT        
32     -P, --export-ps=FILENAME
33     -E, --export-eps=FILENAME
34     -A, --export-pdf=FILENAME
36     -T, --export-text-to-path
37     -B, --export-bbox-page 
38     -F, --export-embed-fonts
40     -l, --export-plain-svg=FILENAME             
42     -I, --query-id=ID     
43     -X, --query-x
44     -Y, --query-y
45     -W, --query-width
46     -H, --query-height
48     -x, --extension-directory
49         --verb-list
51         --verb=VERB-ID
52         --select=OBJECT-ID
54     -p, --print=PRINTER
56     -g, --with-gui                    
57     -z, --without-gui                 
59         --vacuum-defs
61         --g-fatal-warnings
63 =head1 DESCRIPTION
65 B<Inkscape> is a GUI editor for B<Scalable Vector Graphics (SVG)> format
66 drawing files, with capabilities similar to B<Adobe Illustrator>,
67 B<CorelDraw>, B<Visio>, etc. Inkscape features include versatile
68 shapes, bezier paths, freehand drawing, multi-line text, text on path,
69 alpha blending, arbitrary affine transforms, gradient and pattern fills, node
70 editing, SVG-to-PNG export, grouping, layers, live clones, and more.  The interface is
71 designed to be comfortable and efficient for skilled users, while
72 remaining conformant to B<GNOME> standards so that users familiar with
73 other GNOME applications can learn its interface rapidly.
75 B<SVG> is a W3C standard XML format for 2D vector drawing. It allows
76 defining objects in the drawing using points, paths, and primitive
77 shapes.  Colors, fonts, stroke width, and so forth are specified as
78 `style' attributes to these objects.  The intent is that since SVG is a
79 standard, and since its files are text/xml, it will be
80 possible to use SVG files in a sizeable number of programs and for a
81 wide range of uses.
83 B<Inkscape> uses SVG as its native document format, and has the goal of
84 becoming the most fully compliant drawing program for SVG files
85 available in the Open Source community.
88 =head1 OPTIONS
90 =over 8
92 =item B<-?>, B<--help>
94 Show help message
96 =item B<-V>, B<--version>
98 Show Inkscape version and build date.
100 =item B<-a> I<x0:y0:x1:y1>, B<--export-area>=I<x0:y0:x1:y1>
102 In PNG export, set the exported area in SVG user units (anonymous length units normally used
103 in Inkscape SVG).  The default is to export the entire document canvas.  The point (0,0)
104 is the lower-left corner.
106 =item B<-C>, B<--export-area-canvas>
108 In PNG export, exported area is the entire canvas (page). Usually this is the default, so you
109 don't need to specify this unless you are using --export-id to export a specific object.
111 =item B<-D>, B<--export-area-drawing>
113 In PNG export, exported area is the entire drawing (not canvas), i.e. the bounding box
114 of all objects of the document. With this option, the exported image will
115 display just the visible objects of the document without margins or cropping. Can be
116 used in combination wtih --export-use-hints.
118 =item B<--export-area-snap>
120 Snap the export area outwards to the nearest integer SVG user unit (px) values. If you are using the 
121 default export resolution of 90dpi and your graphics are pixel-snapped to minimize antialiasing, this switch 
122 allows you to preserve this alignment even if you are exporting some object's bounding 
123 box (with --export-id or --export-area-drawing) which is itself not pixel-aligned.
125 =item B<-b> I<COLOR>, B<--export-background>=I<COLOR>
127 Background color of exported PNG.
128 This may be any SVG supported color string, for example "#ff007f" or "rgb(255, 0, 128)".
129 If not set,
130 then the page color set in Inkscape in the Document Options dialog will be used (stored in the pagecolor= attribute of sodipodi:namedview).
132 =item B<-d> I<DPI>, B<--export-dpi>=I<DPI>
134 The resolution used for bitmap export.
135 The default is 90, which corresponds to 1 SVG user unit 
136 (px, also called "user unit") exporting to 1 bitmap pixel.
137 This value overrides the DPI hint if used with --export-use-hints.
139 =item B<-e> I<FILENAME>, B<--export-png>=I<FILENAME>
141 Specify the filename for PNG export.
142 If it already exists, the file will be overwritten without asking.
144 =item B<-f> I<FILENAME>, B<--file>=I<FILENAME>
146 Open specified document(s).
147 Option string may be omitted, i.e. you can list the filenames without -f.
149 =item B<-g>, B<--with-gui>
151 Try to use the GUI (on Unix, use the X server even if $DISPLAY is not set).
153 =item B<-h> I<HEIGHT>, B<--export-height>=I<HEIGHT>
155 The height of generated bitmap in pixels.
156 This value overrides the --export-dpi setting (or the DPI hint if used with --export-use-hints). 
158 =item B<-i> I<ID>, B<--export-id>=I<ID>
160 The id attribute value of the object that you want to export from the document.  By
161 default the exported area is the bounding box of the object; you can override this using
162 --export-area, --export-area-canvas, or --export-area-drawing.
164 =item B<-j>, B<--export-id-only>
166 Only export the object whose id is given in --export-id. All other objects are hidden and won't 
167 show in export even if they overlay the exported object. Without --export-id, this option is ignored.
169 =item B<-l>, B<--export-plain-svg>=I<FILENAME>
171 Export document(s) to plain SVG format, without sodipodi: or inkscape: namespaces and without RDF metadata.
173 =item B<-x>, B<--extension-directory>
175 Lists the current extension directory that Inkscape is configured to use and
176 then exits.  This is used for external extension to use the same configuration
177 as the original Inkscape installation.
179 =item B<--verb-list>
181 Lists all the verbs that are available in Inkscape by ID.  This ID can be
182 used in defining keymaps or menus.  It can also be used with the --verb
183 command line option.
185 =item B<--verb>=I<VERB-ID>, B<--select>=I<OBJECT-ID>
187 These two options work together to provide some basic scripting for
188 Inkscape from the command line.  They both can occur as many times as
189 needed on the command line and are executed in order on every document that
190 is specified.
192 The --verb command will execute a specific verb like it
193 was called from a menu or button.  Dialogs will appear if that is part
194 of the verb.  To get a list of the verb IDs available use the --verb-list
195 command line option.
197 The --select command will cause objects that have the ID
198 specified to be selected.  This allows various verbs to act upon them.  To
199 remove all the selections use --verb=EditDeselect.  The object IDs
200 available are dependent on the document specified to load.
202 =item B<-p> I<PRINTER>, B<--print>=I<PRINTER>
204 Print document(s) to the specified printer using `lpr -P PRINTER'.
205 Alternatively, use `| COMMAND' to specify a different command to pipe to,
206 or use `> FILENAME' to write the PostScript output to a file instead of printing.
207 Remember to do appropriate quoting for your shell, e.g.
209 inkscape --print='| ps2pdf - mydoc.pdf' mydoc.svg
211 =item B<-t>, B<--export-use-hints>
213 Use export filename and DPI hints stored in the exported object (only with --export-id).
214 These hints are set automatically when you export selection from within Inkscape.
215 So, for example, if you export a shape with id="path231" as /home/me/shape.png at 300 dpi from document.svg using Inkscape GUI, and save the document,
216 then later you will be able to reexport that shape to the same file with the same resolution simply with 
218 inkscape -i path231 -t document.svg
220 If you use --export-dpi, --export-width, or --export-height with this option,
221 then the DPI hint will be ignored and the value from the command line will be used.
222 If you use --export-png with this option,
223 then the filename hint will be ignored and the filename from the command line will be used. 
225 =item B<-w> I<WIDTH>, B<--export-width>=I<WIDTH>
227 The width of generated bitmap in pixels.
228 This value overrides the --export-dpi setting (or the DPI hint if used with --export-use-hints). 
230 =item B<-y> I<VALUE>, B<--export-background-opacity>=I<VALUE>
232 Opacity of the background of exported PNG.
233 This may be a value either between 0.0 and 1.0 (0.0 meaning full transparency, 1.0 full opacity)
234 or greater than 1 up to 255 (255 meaning full opacity).
235 If not set and the -b option is not used,
236 then the page opacity set in Inkscape in the Document Options dialog will be used (stored in the inkscape:pageopacity= attribute of sodipodi:namedview).
237 If not set but the -b option is used,
238 then the value of 255 (full opacity) will be used. 
240 =item B<-P> I<FILENAME>, B<--export-ps>=I<FILENAME>
242 Export document(s) to PostScript format. Note that PostScript does not support transparency, so any transparency in the original SVG will be lost. This option can be used together with --export-bbox-page and --export-text-to-path.
244 =item B<-E> I<FILENAME>, B<--export-eps>=I<FILENAME>
246 Export document(s) to Encapsulated PostScript format. Note that PostScript does not support transparency, so any transparency in the original SVG will be lost. This option can be used together with --export-bbox-page and --export-text-to-path.
248 =item B<-A> I<FILENAME>, B<--export-pdf>=I<FILENAME>
250 Export document(s) to PDF 1.4 format. This format preserves the transparency in the original SVG (though not all PDF viewers can display it yet). This option can be used together with --export-text-to-path (currently this is required, because exporting text as text is not yet supported).
252 =item B<-T>, B<--export-text-to-path>
254 Convert text objects to paths on export, where applicable (currently works for PS, EPS, and PDF export).
256 =item B<-B>, B<--export-bbox-page>
258 Export files with the bounding box set to the page size, where applicable (currently works for PS and EPS export).
260 =item B<-F>, B<--export-embed-fonts>
262 Embed fonts used in the document into exported PS/EPS file. Note: only Type 1 fonts can be embedded, not TrueType.
264 =item B<-I>, B<--query-id>
266 Set the ID of the object whose dimensions are queried. If not set, query options will 
267 return the dimensions of the drawing (i.e. all document objects), not the page or viewbox
269 =item B<-X>, B<--query-x>
271 Query the X coordinate of of the drawing or, if specified, of the object with --query-id. The returned value is in px (SVG user units). 
273 =item B<-Y>, B<--query-y>
275 Query the Y coordinate of of the drawing or, if specified, of the object with --query-id. The returned value is in px (SVG user units). 
277 =item B<-W>, B<--query-width>
279 Query the width of of the drawing or, if specified, of the object with --query-id. The returned value is in px (SVG user units). 
281 =item B<-H>, B<--query-height>
283 Query the height of of the drawing or, if specified, of the object with --query-id. The returned value is in px (SVG user units). 
285 =item B<--vacuum-defs>
287 Remove all unused items from the <lt>defs<gt> section of the SVG file.  If this
288 option is invoked in conjunction with --export-plain-svg, only the exported file
289 will be affected.  If it is used alone, the specified file will be modified in place.
291 =item B<-z>, B<--without-gui>
293 Do not open the GUI (on Unix, do not use X server); only process the files from console.
294 This is assumed for -p, -e, -l, and --vacuum-defs options. 
296 =item B<--g-fatal-warnings>
298 Part of the standard GTK option that are recognized.  This forces any GTK
299 warnings to cause Inkscape to abort.  This option is listed because it gets
300 used for debugging.
302 =item B<--usage>
304 Display a brief usage message.
306 =back
308 =head1 CONFIGURATION
310 The preferences.xml configuration file located in ~/.inkscape/ is used
311 to customize the application settings for the user.  
313 =over 8
315 =item B<interface> 
317 The B<interface> element(s) of the config file is used to set parameters
318 related to the GUI interface, such as the open/closed status of various
319 GUI elements, etc. 
321 =item B<group id="documents">
323 The documents group is used for containing the recent files list.  Each
324 document is listed with its uri (path) and name indicated.
326 =item B<group id="template">
328 The template group is used for storing parameters related to blank
329 documents. 
331 =item B<group id="tools">
333 The tools group is used for storing the user style preferences for
334 different event contexts (i.e., shapes, freehand or calligraphic stroke
335 properties, etc.).
337 =item B<group id="palette">
339 The palette group allows setting of dash styles.  This allows you to
340 define the stroke lengths for different kinds of dashes.
342 =item B<group id="dialogs">
344 The dialogs group allows persisting the position and width of each of
345 the dialogs in the application, so that they'll start up in the last
346 place the user had them at the next time the app is run.
348 =item B<group id="printing">
350 The printing group is for storing different printer settings.  Each
351 setting is identified with an id.  Properties include I<bitmap>
352 (true/false), I<resolution>, and I<destination>.
354 =item B<group id="options">
356 The options group allows persisting various user selected options
357 including I<nudgeddistance>, I<rotationstep>, I<cursortolerance>, and
358 I<dragtolerance>. 
360 =back
362 =head1 DIAGNOSTICS
364 The program returns zero on success or non-zero on failure.
366 A variety of error messages and warnings are printed to STDERR or
367 STDOUT.  If the program behaves erratically with a particular SVG file
368 or crashes, it is sometimes useful to look at this output for clues.
370 =head1 EXAMPLES
372 While obviously B<Inkscape> is primarily intended as a GUI application,
373 it can be used for doing SVG processing on the commandline as well.
375 Print an SVG file:
377     inkscape filename.svg -p '| lpr'
379 Export an SVG file into PNG with the default resolution of 90dpi (one SVG user unit translates to one bitmap pixel):
381     inkscape filename.svg --export-png=filename.png
383 Same, but force the PNG file to be 600x400 pixels:
385     inkscape filename.svg --export-png=filename.png -w600 -h400
387 Same, but export the drawing (bounding box of all objects), not the page:
389     inkscape filename.svg --export-png=filename.png --export-area-drawing
391 Export to PNG the object with id="text1555", using the output filename and 
392 the resolution that were used for that object last time when it was exported from the GUI:
394     inkscape filename.svg --export-id=text1555 --export-use-hints
396 Same, but use the default 90dpi resolution, specify the filename, 
397 and snap the exported area outwards to the nearest whole SVG user unit values 
398 (to preserve pixel-alignment of objects and thus minimize antialiasing):
400     inkscape filename.svg --export-id=text1555 --export-png=text.png --export-snap-area
402 Convert an Inkscape SVG document to plain SVG:  
404     inkscape filename1.svg --export-plain-svg=filename2.svg
406 Convert an SVG document to EPS, converting all texts to paths:
408     inkscape filename.svg --export-eps=filename.eps --export-text-to-path
410 Query the width of the object with id="text1555":
412     inkscape filename.svg --query-width --query-id text1555
415 =head1 ENVIRONMENT
417 B<DISPLAY> to get the default host and display number.
419 B<TMPDIR> to set the default path of the directory to use for temporary
420 files.  The directory must exist.
422 =head1 THEMES
424 To load different icons sets instead of the default
425 B<$PREFIX>/share/inkscape/icons/icons.svg file, the directory
426 B<$HOME>/.inkscape/icons/ is used.  Icons are loaded by name
427 (e.g. I<fill_none.svg>), or if not found, then from I<icons.svg>.  If the
428 icon is not loaded from either of those locations, it falls back to the
429 default system location.
431 The needed icons are loaded from SVG files by searching for the SVG id with
432 the matching icon name.  (For example, to load the "fill_none" icon from
433 a file, the bounding box seen for SVG id "fill_none" is rendered as the
434 icon, whether it comes from I<fill_none.svg> or I<icons.svg>.)
436 =head1 FILES
438 B<$HOME>/.inkscape/preferences.xml - The user's preference settings. 
440 B<$HOME>/.inkscape/extensions.xml - The filter programs to be used in
441 the application.
443 B<$HOME>/.inkscape/icons/{*,icons}.svg - Icons to overload for themes.
445 =head1 OTHER INFO
447 The canonical place to find B<Inkscape> info is at
448 http://www.inkscape.org/.  The website includes links to other relevant
449 documentation, tutorials, user manual, examples, mailing list archives,
450 the latest released version of the program, and more. 
452 =head1 SEE ALSO
454 gimp(1), autotrace, potrace, frontline, ill2svg, rsvg(1), xfig(1), sodipodi,
455 karbon14, dia(1X), batik.
457 SVG compliance test suite:  http://www.w3.org/Graphics/SVG/Test/
459 SVG validator:  http://jiggles.w3.org/svgvalidator/
461 I<Scalable Vector Graphics (SVG) 1.1 Specification>
462 I<W3C Recommendation 14 January 2003>
463 L<http://www.w3.org/TR/SVG11/>
465 I<Scalable Vector Graphics (SVG) 1.2 Specification>
466 I<W3C Working Draft 13 November 2003>
467 L<http://www.w3.org/TR/SVG12/>
469 I<SVG 1.1/1.2/2.0 Requirements>
470 I<W3C Working Draft 22 April 2002>
471 L<http://www.w3.org/TR/SVG2Reqs/>
473 I<Document Object Model (DOM): Level 2 Core>
474 I<Arnaud Le Hors et al editors, W3C>
475 L<http://www.w3.org/TR/DOM-Level-2-Core/>
478 =head1 GUI NOTES
480 To learn Inkscape's GUI operation, read the tutorials in Help > Tutorials.
482 Inkscape can import (File > Import) most bitmap formats (PNG, BMP, JPG, XPM, GIF etc.),
483 plain text (requires Perl), and AI format (Adobe Illustrator documents, versions up to 7 only;
484 requires Perl). 
486 Inkscape exports 32-bit PNG images (File > Export) as well as AI, PS, EPS, PDF (requires
487 Ghostscript), DXF and several other formats via File > Save as.
489 Inkscape can use the pressure and tilt of a graphic tablet pen for width and angle of
490 the Calligraphic tool.
492 Inkscape includes a GUI front-end to the Potrace bitmap tracing engine
493 (http://potrace.sf.net) which is embedded into Inkscape.
495 Inkscape can use external scripts (stdin-to-stdout filters) that are represented by
496 commands in the Effects menu. A script can have a GUI dialog for setting various
497 parameters and can get the IDs of the selected objects on which to act via the command
498 line. Inkscape comes with an assortment of effects written in Python, mostly for path
499 manipulation.
501 =head1 KEYBINDINGS
503 To get a complete list of keyboard and mouse shortcuts, view doc/keys.html, or use the Keys and Mouse command in Help menu from the GUI to see an SVG chart.
505 =head1 BUGS
507 Many bugs are known; please refer to the website (inkscape.org) for reviewing the reported ones and to
508 report newly found issues.  See also the Known Issues section in the Release Notes for
509 your version (file `NEWS').
511 =head1 AUTHORS
513 This codebase owes its existance to a large number of contributors
514 throughout its various incarnations.  The following list is certainly
515 incomplete, but serves to recognize the many shoulders on which this
516 application sits:
518 [% INCLUDE "AUTHORS" %]
520 This man page was put together by Bryce Harrington
521 E<lt>brycehar@bryceharrington.comE<gt>.
523 =head1 HISTORY
525 The codebase that would become Inkscape began life in 1999 as the
526 program Gill, the GNOME Illustrator application, created by Raph
527 Levien.  The stated objective for Gill was to eventually support all of
528 SVG.  Raph implemented the PostScript bezier imaging model, including
529 stroking and filling, line cap style, line join style, text, etc.  
530 Raph's Gill page is at http://www.levien.com/svg/.  Work on Gill appears
531 to have slowed or ceased in 2000.
533 The next incarnation of the codebase was to become the highly popular
534 program Sodipodi, led by Lauris Kaplinski.  The codebase was turned
535 into a powerful illustration program over the course of several
536 year's work, adding several new features, multi-lingual support, porting
537 to Windows and other operating systems, and eliminating dependencies.
539 Inkscape was formed in 2003 by four active Sodipodi developers, Bryce
540 Harrington, MenTaLguY, Nathan Hurst, and Ted Gould, wanting to take a
541 different direction with the codebase in terms of focus on
542 SVG compliance, interface look-and-feel, and a desire to open
543 development opportunities to more participants.  
545 =head1 COPYRIGHT AND LICENSE
547 B<Copyright (C)> 1999-2005 by Authors.  
549 B<Inkscape> is free software; you can redistribute it and/or modify it
550 under the terms of the GPL.  
553 =for comment
554 $Date$