svgslides -- a slide presentation program for linux using inkscape
A command line and GUI tool for slide show presentations.
Current version: 1.3
This webpages was last updated: January, 2009
In November 2008, I decided (based on very helpful ideas and tips) to
rename the software, and to make easier to run on different distro's!
Slides is now called svgslides.
In December 2008 and January 2009, I have added a GUI frontend for
Summary of features
Command-line driven utilities
Graphical User Interface
Create a PDF slide show from a sequence of SVG files
Designed to work with drawings made with Inkscape (SVG format)
Useful for creating slide presentations and lectures
Slides can be built incrementally (e.g., showing text items one
for one in a slide)
Contains additional utilities to speed up workflow
Interactive script to make bullet pointed slides (svgslides-bp)
Script to read text file with text lines, and create a
multislide file out of it (svgslides-bp-readlines)
Script to split out one svg file in multiple svg files for
alternative aims (svgslides-multipage)
Why you may need this
There are several reasons why you would like to work
with svgslides and its associated tools. Here are the most
You like to draw with Inkscape
You like to do things on the unix command line
You like to use open software and Linux
You want a tool to make PDF slideshows
You want to make slide presentation fast and easy
You want to create PDF files from SVG files, and other tools
show minor errors in doing so.
It is easy enough to make a slide show with the standard slide show
programmes, such as Open Office Impress and its commercial
equivalents. But I find PDF readers much easier to use and control
than those programmes. Besides that, nearly all computers have
a PDF reader
installed. You can run Acrobat reader in full-screen mode (press
control-l). Then you can go through your slides just by pressing the
page down key, or pressing the mouse key.
You can also use a remote control with acrobat reader to go one
page ahead (and many lecture theatres use those remote controls).
Thus, Acrobat reader and other PDF readers are great slideshow
Further, Inkscape is a phantastic vector-based drawing program for
creating attractive slides. Inkscape has a number of great features
for creating slides. It has a good text tool and it supports all
fonts installed on a system. Further, it is easy to import images
into a Inkscape drawing, and there are also many cliparts available
for Inkscape. Finally, both Inkscape and most PDF presenters are
FREE of charge, and really easy to use.
I use Inkscape for creating talks and lectures. I create them on
my Linux computer, but of course all my PDF presentations run without
any problems on all other operating systems.
Again, this program is no sense comparible to programs such as
OpenOffice Presenter. You
have to be kind of a Linux or command-line fan to enjoy this utility.
That said, it is really not difficult to use!
The newest addition to svgslides is the gui. You can start the
program with svgslides-gui.
Edit options (use to cut, copy, and paste whole slides (but not
Help options (not yet implemented)
Information about current slide, and number of slides
Information about current slide, in case there are partial
(i.e., sub) slides.
The current slide
Go to first slide of slide show
Go to previous slide
Go to previous (sub) slide
Go to next (sub) slide
Go to next slide
Go to last slide of slide show
Edit currently slide (see 6) using inkscape
Add a slide (creates new svg file in current directory). If
template.svg exists, that file will be used.
Add a bulletpointed slide (uses svgslides-bp)
Click to toggle between before/after. This determines whether
new slides will be added before or after the current slide.
The GUI, written in tcl/tk, is still in development. Although it
is fully functional, it needs some more polishing. Also, note that
all the drawing of slides is done via inkscape.
svgslides can be installed on any Linux system easily (I am
sure it can run on other operating systems as well, but that might
require some work to do, because the shell script uses some other
programs, such a awk, sed, xml, and pdfjoin).
Download this file and
unpack with tar -xf svgslides_src_1.3_tar.gz
Goto the newly created directory svgslides1.3 and follow
instructions of the README file. Make sure you have the
dependencies is installed as well. They are listed in the README
Please note that the tutorial slides files are included in a
subdirectory tutorial. Read the README file for details.
Besides svgslides, the install program will install a few more
programs. Here is a complete list of installed files (in /usr/bin)
Further, it will install man pages for each of these 6 programmes.
Create your slides using inkscape. Preferably use a landscape
If you use object label names (which can be set with ctrl-shift-o
in inkscape) like 'part1','part2', these parts will be incrementally
added to different slides.
Create a list with your filenames (the svg extension on each
line of that list is optional), and call the file list (or
Call svgslides list_of_svgfilenames.txt, optionally with
slidelist filename if it is not "list", and a pdf file will be
Read the svgslides manpage if you need to know more about
Syntax of svgslides
The default filename is list A filename can be a text file
with an svg file on each line (you can leave the .svg extension out on
Example of my_list_of_svgfilenames.txt:
Options of slides:
-b create thumbnail bitmaps (as png) of slides (for use
with other programs)
-c clean all cached files before starting
-d dpi (default 90)
-h short help
-i use the inkscape internal PDF export (this does not work
for blur and clipping)
-l use id instead of label in xml for incremental slides (for old slidesshows only)
-o output filename (default slides.pdf)
-p prefix of label for incremental slides (default= part)
-s size of paper: letter or a4 (default: /etc/papersize)
-t if a slide is missing, copy template.svg to the name of this file
-v verbose, shows information on ongoing process
-x do not use the incremental slide info
-k keep a numbered list of the partial svg's
-n do not actually render to pdf
Info: The caching of PDF files speeds up slides the next time you
use svgslides. Creating picture perfect PDF files is relatively
slow, and the cache stores the PDF files until the corresponding svg
slide file gets changed. The cache even keeps track of the dpi you
If your svg file includes an external bitmap which has been changed
while the svg file itself has not been changed, your slide will not
show the lates file, of course, because it would still use the cached
ps file. In that case you could use the -c option.
More helpful related programmes
The following programmes can be used in conjunction with svgslides,
and there is a seperate tutorial explaining how they work. Here is a
svgslides-bp This program can be used to create a bullet pointed
slides really quickly from the command line. It can read from the
command line or from file (using the smaller than sign).
svgslides-bp-readerlines This program can be used to read a list
of slides with title and bullet points.
svgslides-multipage to create multiple slides on one page for
handouts of your slideshow
Both svgslides-bp and svgslides-readlines create files that can later
be used with slides to create a pdf file.
Another helpful programme is svgslides-svg2pdf. It calls
inkscape to create a bitmap file (png) of your svg file and then
prints this to a postscript file (all using inkscape via command line
options), and then transforms that into a PDF. This is helpful,
because other programs do not always do the transformation in a
The reason for using svgslide-svg2pdf instead of the builtin
PDF export funtion is that it it creates an exact copy of your
svg file. This is nice, because the builtin PDF export function does
not always work (e.g., when I last tried it, it did not work with
Gaussian blur - this will be changed, though). But, it is relatively
slow if you want a high resolution, and it creates large files.
Hopefully, Inkscape progresses quickly and this intermediate step is
no longer necessary. This might be reached soon.
Obviously, if you are just looking for a program to creat PDF files
based on inkscape files, and which are always 100% correctly rendered,
you can use svgslides-svg2pdf.
Often, it is nice to have a compact overview of all your slides on one
or on a few pages. The utility svgslides-multipage is designed
for exactly this purpose. Alternatively, you could used your printer
driver to print multiple pages on one page; the latter option does not
always work though, and that is why I created multipage. Multipage
does itself also not always work perfectly!
The arguments of multipage are individual filenames (with or without
the svg extension) or a textfile.
You can open the output file of multipage with inkscape. You can, of
course, export it with the PDF option. Note that inkscape .45
supports excellent PDF export, except for a few minor things (blurring
Potential problems and solutions
Question: The program does not work at all, what is wrong? Answer: Maybe not all dependencies have been installed, such as
xmlstarlet (see bugs below), pdfjoin, latex, inkscape?
Question: Why is the size of the paper is wrong? Answer: This can happen when the default papersize is set to
letter or a4 on your system (check with paperconf). You can force
slides to use a particular papersize with the -s option.
Question: Why is the slideshow rotated? Answer:This is due to the way the pdf is produced. In your PDF
view program you can rotate. The PDF reader Evince memorizes
the rotation of specific documents. In both evince and acrobat reader
you can rotate the view. In acroread: menu->view->rotate view, in
Svgslides and its associated tools can do a lot, but not everything!
In particular, it is not (yet) possible to show movies and sounds. It
is also not yet possible to use internet links.
In case of bugs, please email Gijsbert Stoet:
Thanks to the various people who have made helpful comments, including