Dennis,
Going back to the Sorceress image it's definitely the filters that are
slowing it down. It might help to understand how filters work in the SVG
world, as it makes it easier to understand how the various workarounds that
people have suggested will help.
Filters are essentially bitmaps generated by performing a series of
mathematical operations on each pixel in the rendered image. The more
pixels that need to be rendered, the more maths there is to do, and the
slower the rendering will be. Rendering to a bitmap doesn't just mean
exporting to PNG though; every time Inkscape draws to the screen it has to
render to a bitmap.
If your filtered object takes up (say) 50 pixels in the rendered image, it
can be drawn a lot faster than if it takes up 500 pixels, as there's only a
tenth of the pixels to calculate. That leads to my first suggestions:
1) Zooming out will make things redraw faster, as will reducing the window
size (I prefer to use a smaller window with undocked palettes for this
reason, rather than running Inkscape full-screen). Try not to zoom in any
further than you have to.
1a) When you do export to bitmap, higher DPI settings will lead to more
pixels, more calculations and a longer export time. Try to keep the DPI and
the export area down to the smallest you can get away with.
If there is any transparency involved then Inkscape has to render the
object(s) below, then render the objects above, then combine the two. So
our 500 pixel object, as soon as transparency is added, will result in at
least 1000 pixels being calculated and combined. Even if the opacity of
your objects is at 100%, many filters introduce some transparency - blurs
being the most obvious. Now consider many blurred and translucent objects
stacked on top of each other - that's a lot of maths to do.
That's why it can be beneficial to split your image into layers. Hiding
layers means that they don't have to be calculated, and don't have to be
merged with other objects, greatly reducing the amount of maths needed to
re-draw the image. Bear in mind that you can also have sub-layers (and
sub-sub-layers...) which can make it easier to manage drawings with lots of
objects in.
2) Split your drawing into layers and hide as many as you can if
performance is a problem.
Sometimes you might want to use the filtered version of an object for
reference, but don't really need to have Inkscape re-calculating it all the
time. Select the object(s) in question, and use Edit > Create A Bitmap
Copy to generate a bitmap with the filters "fixed". It may take a while to
create the bitmap, but once done it will be a lot faster to render than the
original objects. If I need to do this I do it for a whole layer of
objects, so that I can then hide the layer, and put the bitmap onto the
layer I'm actually working on.
3) Use bitmaps to let you "snapshot" your filtered objects for reference,
then hide the originals.
Of course, the fastest option is simply not to do all the maths. If you
don't need to see the filtered version to make an edit, then don't make
Inkscape draw it. My final suggestion:
4) Use View > Display Mode to turn off filters as much as you can.
When you use filters or effects in The GIMP, the result is immediately
fixed. If changes the colour of some pixels, then its job is done. The
filter doesn't need to be re-calculated when you zoom in, but you also
can't alter its parameters later on. Inkscape filters are "live" and get
re-calculated for every pixel for every zoom, pan or change in the image.
They are performing magnitudes more calculations than filters in The GIMP.
The trick is to know and understand that difference, and try to structure
your image and workflow so that you minimise the number of calculations it
has to perform at any given time.
I hope that helps a little.
Mark
--
Co-creator of *The Greys* and *Monsters, Inked* webcomics
Website
http://www.peppertop.com/
Facebook
http://facebook.com/TheGreysComic
Twitter
https://twitter.com/TheGreysComic