MapFish Print - the most advanced Open Source map printing solution
In this series of articles we present the challenges common to printing maps online, explore the technologies required to produce professional prints and also cover some interesting real world examples of existing applications.
In this first article we provide an overview of the printing solution MapFish Print and introduce you to its diverse field of use cases.
MapFish Print is a Java-based solution for printing maps used in a large number of Web GIS applications and geoportals. In this brief article we want to give the reader an overview of the solution and present some of the diverse use cases of MapFish Print.
Camptocamp is the long-time editor and maintainer of the project (https://github.com/mapfish/mapfish-print), which was initiated 15 years ago with the last major rewrite (version 3) released in 2014. Until today MapFish Print continues to remain a very active Open Source project.
MapFish Print combines several mature Open Source tools and frameworks such as GeoTools for mapping and JasperReports for configuring layouts. A pluggable architecture based on the spring framework enables a highly customizable way of printing maps, where even non-developers can create their own report templates by using Jaspersoft Studio. Reports can consist of several pages and may contain multiple maps with a consistent layout spreading neatly across pages.
An interesting use case is the ÖREB-Kataster (PLR Cadastre), where MapFish Print is by several swiss cantons for printing cadastral maps and related metadata, with Kanton Basel-Landschaft as the initiator of the project. On the first page the resulting PDF shows an overview map of the selected parcel and a table of the key attributes. The following pages contain a detailed view of all potential law restrictions on land ownership affecting the corresponding parcel. As such additional maps are included in the report that show the land use on the regional and municipal level, followed by information on the exposure of the unit to different levels of environmental noise. Hyperlinks are also included in the report tables. They provide more detailed information on the underlying legal terms and property laws.
A further use case is SchweizMobil or SwitzerlandMobility where MapFish Print is used as part of their Geoportal for printing routes for different outdoor activities within Switzerland. Printed maps contain a topographic map in the background and the vector layers of the routes selected within the area of interest. Each day thousands of PDFs are generated from the Schweizmobil platform showcasing the high scalability of MapFish Print services.
The federal geoportal of Switzerland geo.admin.ch uses MapFish Print as their main printing client. Geoadmin contains a large number of geodata and since 1st of March this year swisstopo has made access to all of their official geodata freely available to the public.
Thus, the services of the printing client need to be highly scalable and allow for printing of various data types such as: WFS, WMS, WMTS as well as overlying elements drawn by the user. MapFish Print assures that all of the content visible in the map view is rendered correctly and with an appropriate resolution, all within the same print (see also https://www.youtube.com/watch?v=VP79mP_zKZY).
The resulting PDFs even contain a QR-code that takes the user right back to the geoportal showing the layer(s) of interest. We are proud that MapFish Print is the trusted printing engine used in swisstopo’s geoportal.
Besides its usage as a printing client in WebGIS and Geoportals MapFish Print is also integrated in some widely used GIS software tools such as GeoServer (https://docs.geoserver.org/stable/en/user/extensions/printing/index.html) and GeoNetwork (https://geonetwork-opensource.org/manuals/trunk/en/install-guide/map-print-setup.html).
The next article in this series on online printing will take a closer look at the technical challenges of printing maps from a web based application, so stay tuned and keep reading!
You would like to know more?
Please feel free to contact us.
Interested in working in an inspiring environment and joining our motivated and multicultural teams?
- ERP Consultant (m/f/d) - Zurich/Olten
- Odoo Developer Internship (m/f/d) - Chambéry
- Java Developer Engineer (m/f/d) - Paris/Chambéry
- Odoo Developer (m/f/d) - Olten/Zurich/Munich
- ERP Consultant (m/f/d) - Zürich/Olten
- ERP Project Manager (m/f/d) - France
- Sales Manager France Infrastructure Solutions (m/f/d) - Paris
- Marketing Specialist - Munich/Olten