Map Goes Here

Warning - This site is a work in progress - some bits will not work

OSM Print Maps

This site is a tool to create printable maps from OpenStreetMap data. Three styles of output are supported:

  1. Simple single page maps.
  2. 'Townguide' maps with street index and highlighted points of interest.
  3. 'Mapbook' atlas style booklets with a larger are split over several pages.
A number of map styles are supported, and the user can select if a grid, contour lines or hill shading (relief) is required. The map is produced as a PDF file which can be downloaded for printing.

Getting Started

To create a map you should:

  1. Select the "Create Map tab" to open the editor.
  2. Drag and zoom the on-screen map to show the area that you wish to create a printable map for.
  3. In the 'General Map Configuration', select the title and paper size to be used for the output, and the style of output required.
  4. In the 'Map Style Options' select whether a grid, contour lines or hill shading is required on the map.
  5. Press the 'Submit Job' button to create your map. The output will appear in the 'Output' section after a few minutes.
If you have difficulty using the site, or have suggestions for improvements, please contact Graham Jones.

What Works?

Working things should be:

  1. Simple Map output (not townguide or mapbook)
  2. Default OSM map style
  3. Hillshading, contours and grid map style options

How it Works

The source code for the entire application is available on GitHub.

The system comprises three distinct components:

  1. Web Front End - the job editor, which is a javascript application which runs in a web browser, and adds map request rendering jobs to a queue ready for processing.
  2. Queue API - The application programming interface (API) that handles the queue of jobs that need to be rendered into pdf maps. This runs on the web server that also serves the job editor web front end. This is written in php, and uses a mySql database so it will run on most commercial web hosting services.
  3. Job Processor Daemon - a programme that runs on a computer that periodically asks the Queue API if there are any job rendering tasks in the queue. If there is, it downloads the request and processes it into a PDF map. It then uses the queue API to upload the results to the web server so they can be accessed by the user.

Although not implemented yet, the intention is that the system will support several job Processor Daemons, running on different computers. This will be useful to allow lower power computers to be used - different people could maintain job processors that have databases of different areas - if enough computers are involved, global coverage could be achieved.


If you have any queries (or would like to help get it working properly!), pease contact Graham Jones.

Dialog text goes here