[QGIS-Developer] Using Atlas in QGIS 3 to make a print ready publication

Nyall Dawson nyall.dawson at gmail.com
Sun May 20 16:05:24 PDT 2018

On 18 May 2018 at 17:03, Tim Sutton <tim at kartoza.com> wrote:
> Hi All (mainly Nyall I guess)
> I have been playing with atlas in QGIS 3 to make a book prototype for a map series. In the past when I used atlas, it was just to share as a PDF or manually print out a map series. Now I want to prepare something to send to a printer and I realise the requirements are a little different:
> * have a page for the cover outside on the left side, back cover outside on the right
> * a page with front cover inside on the left and the right
> * have one or more ‘front matter pages’ with a matching back matter page for each
> * have the map series with each page having TWO maps from the map series. For example the first page would have on the left Page 1 and on the right Page 30 (where we have a  30 area series in atlas for example). Then the next page would have two map items : Page 2 on the left, Page 29 on the right and so on.
> So I can manage a lot of this workflow by e.g. using separate composer layouts for the front / back matter stuff. What I haven’t thought of a way to do is having two atlas pages on the same layout.  Basically what is needed is the ability to trigger successive increments in the atlas counter if there are two maps (and other elements such as tables) that are controlled by atlas on the same layout.
> This is probably better explained by my diagram below:
> https://user-images.githubusercontent.com/178003/40220376-34c77d00-5a79-11e8-9c09-b1b338915de5.png
> So my questions are :
> 1) Has anyone dealt with this and if so, how did you solve it?

I'm wondering if you could solve this by doing something like:

1. apply a filter to your atlas so you only iterate over half the features
2. don't use the built-in "controlled by atlas" setting for maps, but
instead retrieve the second page feature directly using the
get_feature function, and then use data defined x min/x max/ etc and
to set the scale/extents of the second page map.
3. similarly, use get_feature to retrieve attributes for the second
page feature for the surrounding text content.

> 2) How much work would it be to enable support for this kind of work flow?

Not as far as I know. I'd personally consider it a bit of an edge
case, so not something which belongs in master. But in 3.x plugins can
tie strongly into the whole layouts engine and interface, so
potentially there's scope for a python plugin to handle this.

> 3) Are there any plans to have ‘print once’ pages in composer so that in a layout I could have pages for front matter in ‘print once’ mode, one or more atlas driven pages that will repeat for each atlas area, pages for back matter in 'print once’ mode.

The 3.0 reports functionality should already be able to do that now.


More information about the QGIS-Developer mailing list