Creating an Output¶
The figure below shows an example of print layout including each type of layout items described in the previous section.
From themenu or toolbar, you can output the print layout to different file formats, and it is possible to modify the resolution (print quality) and paper size:
Whenever you export a print layout, there are a selection of export settings QGIS needs to check in order to return the most appropriate output. These configurations are:
Clicking the Export as image icon will ask you to select the image format and enter the filename to use to export the print layout: in the case of multi-page composition, each page will be exported to a file with the given name appended with the page number.
In the next Image Export Options dialog, you can optionally override the print layout resolution and the exported page dimensions (set in Layout panel).
By checking Crop to content option, the image output by the layout will include the minimal area enclosing all the items (map, legend, scale bar, shapes, label, image…) of each page of the composition:
If the composition includes a single page, then the output is resized to include EVERYTHING on the composition. The page can then be reduced or extended to all items depending on their position (on, above, below, left or right of the page).
In case of a multi-page layout, each page will be resized to include items in its area (left and right sides for all pages, plus top for the first page and bottom for the last page). Each resized page is exported to a separate file.
The Crop to content dialog also allows to add some margins around the cropped bounds.
Use image formats that support transparency when items extend beyond the paper extent
Since layout items may be placed outside the paper extent, using the Crop
to content option while exporting can result in an image that extends beyond the paper extent.
Since the background outside of the paper extent will be transparent, for image
formats that do not support transparency (eg,
will be rendered as full black,
“corrupting” the image.
Use transparency-compatible formats like
.PNG in such
If you need to export your layout as a georeferenced image (e.g., to share with other projects), check the Generate world file option and a world file named like the page on which the map reference set in Layout panel is placed will be created along the export(s). This option can also be checked by default in the layout panel.
When needed, images rendering can also be improved with the Enable antialiasing option.
With Export as SVG, you also need to fill the filename (used as a basename for all files in case of multi-page composition) and then can apply Crop to content option.
The SVG export options dialog also allows to override the layout default export and offers other settings:
Always export as vectors: some rendering options require items to be rasterized for a better rendering. Check this option to keep the objects as vectors with the risk that the appearance of the output file may not match the print layout preview (for more details, see Export settings).
Currently, the SVG output is very basic. This is not a QGIS problem, but a problem with the underlying Qt library. This will hopefully be sorted out in future versions.
The Export as PDF tool exports all the composition pages
into a single PDF file you’d need to provide path and name.
Unlike the other formats, exporting to
Exporting a print layout to formats like
creates a georeferenced output (no world file needed) by default.
Atlas functions allow you to create map books in an automated way. Atlas uses the features of a vector or table layer called coverage layer and creates an output for each atlas feature. The most common usage is to zoom a map item to the current atlas feature. Further use cases include:
a map item showing, for another layer, only features that share the same attribute as the atlas feature or are within its geometry;
a label or html item whose text is replaced as features are iterated over;
a table item showing attributes of associated parent or children features of the current atlas feature…
For each feature, an output is processed for all pages and items according to their exports settings.
Use variables for more flexibility
QGIS provides a large panel of functions and variables, including atlas related ones, that you can use to manipulate the layout items but also the layers symbology according to atlas status. Combining these features gives you a lot of flexibility and helps you easily produce advanced mappings.
To enable the generation of an atlas and access atlas parameters, refer to the Atlas panel. This panel contains the following functionalities (see figure_layout_atlas):
An optional Page name combo box to give a more explicit name to each feature page(s) when previewing atlas. You can select a field of the coverage layer or set an expression. If this option is empty, QGIS will use an internal ID, according to the filter and/or the sort order applied to the layer;
An optional Filter with text area that allows you to specify an expression for filtering features from the coverage layer. If the expression is not empty, only features that evaluate to
Truewill be processed;
An optional Sort by that allows you to sort features of the coverage layer, using a field of the coverage layer or an expression. The sort order (either ascending or descending) is set by the two-state Sort direction button that displays an up or a down arrow.
You also have options to set the output of the atlas:
An Output filename expression textbox that is used to generate a filename for each geometry if needed. It is based on expressions. This field is meaningful only for rendering to multiple files;
A Single file export when possible that allows you to force the generation of a single file if this is possible with the chosen output format (PDF, for instance). If this field is checked, the value of the Output filename expression field is meaningless;
The most common usage of atlas is with the map item, zooming to the current atlas feature, as iteration goes over the coverage layer. This behavior is set in the Controlled by atlas group properties of the map item. See Controlled by atlas for different settings you can apply on map item.
In order to adapt labels to the feature the atlas iterates over, you can
include expressions. What you should take care of is to place expression part
(including functions, fields or variables) between
The Label Item for more details).
For example, for a city layer with fields CITY_NAME and ZIPCODE, you could insert this:
The area of [% concat( upper(CITY_NAME), ',', ZIPCODE, ' is ', format_number($area/1000000, 2) ) %] km2
or, another combination:
The area of [% upper(CITY_NAME)%],[%ZIPCODE%] is [%format_number($area/1000000,2) %] km2
[% concat( upper(CITY_NAME), ',', ZIPCODE, ' is ', format_number($area/1000000, 2) ) %]
is an expression used inside the label. Both expressions would result in the
generated atlas as:
The area of PARIS,75001 is 1.94 km2
Once the atlas settings have been configured and layout items (map, table, image…) linked to it, you can create a preview of all the pages by clicking Preview Atlas icon. You can then use the arrows in the same toolbar to navigate through all the features:or
You can also use the combo box to directly select and preview a specific feature. The combo box shows atlas features name according to the expression set in the atlas Page name option.
As for simple compositions, an atlas can be generated in different ways (see Creating an Output for more information). Instead of menu, rather use tools from menu or toolbar.
With Atlas panel or to SVG file.or tool, you’re also prompted to select a folder. Each page of each atlas feature composition is exported to the image file format set in
Print a specific atlas feature
If you want to print or export the composition of only one feature of the atlas, simply start the preview, select the desired feature in the drop-down list and click on(or to any supported file format).
The following code includes all related child features from the defined relation.
setFeature function it allows you to make flexible HTML
which represents relations in whatever format you like (lists, tables, etc).
In the code sample, we create a dynamic bullet list of the related child features.
During the atlas creation there will be an iteration over the coverage layer containing the parent features. On every page, you will see a bullet list of the related child features following the parent’s identifier.