How to: watercolor pastel style in QGIS

Today’s post is a follow-up to a recent map experiment which I published in the QGIS Flickr group. It’s basically an inverted Stamen Toner style with an image in the map composition background instead of a solid color (similar to the approach described for vintage maps):

https://twitter.com/underdarkGIS/status/550340277257650176

That’s nice but with this approach we only get to enjoy the complete design in the print composer but not in the main window. So what other options do we have? – SVG fills to the rescue!

But first we need a suitable SVG with this nice pastel style. I used Gimp to create a seamless version of the pastel image and then embedded the image in an SVG using Inkscape:

LT_RemixedChalkPastel_snakk_seamless

In QGIS, this SVG can now be used in any SVG fill. It’s important to set the Texture width setting to a quite high value when working with SVGs containing big textures, otherwise the images will be rendered very small and the repeating patterns will be very obvious.

Screenshot 2015-01-04 17.49.11

Once the background is in place, we can add the line work and labels. The roads are white with black outlines for bridges which – together with the Lighten blending mode – produce the desired effect:

Screenshot 2015-01-04 17.37.33

3 comments
  1. It’s worth noting that for QGIS >= 2.7 there’s a built-in “Raster image fill” symbol type, which avoids the need of embedding the texture within an SVG file.

    • Thanks, that’s great news indeed! Have you tested how big the images can be? With this SVG solution, generating the SVG previews takes an excessive amount of time if the image is too big.

      • I can’t see any issues with large images – when I developed it I was testing with ~ 2000px wide images and it worked OK. I think in general using the raster fill directly should be faster than embedding it in an SVG due to all the extra processing which is required for the SVG renderer.