I don't believe this is a duplicate question, as other how to print to questions I could find were much more general.

I want make a paper map, for outdoor use (Hiking and Camping). I've looked at the web based options on the wiki page, and none of them seem to be flexible enough.

I want:

  • about 100cm x 60cm overall dimension, including key, title, etc.
  • 1:50,000 scale.
  • to be able to selectively emphasize certain features (trails, passes, campsites, etc), and de-emphasize others (vehicular roads). With most options I've looked at, the trails disappear when I have a large area in view.
  • must output topographic info.

Mapbox's Studio Classic seems to be quite capable of what I want, but has a bit of a steep learning curve. I'm totally willing to put the energy into learning CartoCSS and Studio, but I don't want to invest a lot of time into learning to use Mapbox Studio and then find out it's not able to do what I want.

  • Will it be able to output big enough images?
  • Will the features I want visible be rendered?
  • Is there something else that would be able to do the same, but output svg that would let me further tweak the map before printing?

Thanks for any input.

asked 11 Nov '15, 21:10

keithonearth's gravatar image

accept rate: 17%

edited 17 Nov '15, 05:56

From what I read about Mapbox Studio Classic, it is primarily geared to making webmaps, and only secondarily for print.

All of your requirements (maximum flexibility in design, topographic quality map output, large dimension printing and layout, map legend), really points to a GIS (Geographical Information System) as a first and likely also final step to process and layout your data.

QGIS is of course an obvious choice, as it allows you to download custom sets of data (both geographically and by attribute) and insert this in a SpatialLite or other type of database, but the default option in its interface still doesn't handle multipolygons properly. Therefor, it may be better to use another tool capable of handling multipolygons to process and insert the data in a database, e.g. osm2pgsql and PostGIS, and then use this as the datasource.

Another option is ESRI's ArcGIS Editor for OpenStreetMap, which also does a pretty decent job (and handles multipolygons better than QGIS in the latest release).

Both QGIS and ArcGIS allow you to output your data as vector PDF, meaning you could postprocess it in another application capable of editing or using PDF vector data, and at the same time not being limited by raster output like in Mapbox Studio Classic, as I understood from their website it only outputs high resolution raster for print.

permanent link

answered 11 Nov '15, 23:19

mboeringa's gravatar image

accept rate: 12%

edited 12 Nov '15, 10:35

Thanks for your response, I'll look into QGIS. (I'm on Linux, and I'd like to support free/libre software).

Seems like there's a lot to learn to get functional with any GIS software, but it'd sure be cool to know how to use one.

(12 Nov '15, 19:56) keithonearth

There are two options I would traditionally consider. Both do, however, require a little bit of 'hacking' skill; if you're worried by Mapbox Studio's steep learning curve, you'll probably find these near-vertical!

The first option is to convert raw OpenStreetMap data (in .osm format) to Adobe Illustrator format, and then style the map in Illustrator. There is a Perl script called osm2ai.pl which will convert an .osm file to .ai, which I wrote many years ago. Rather than providing a direct download link, I'd actually suggest you Google it as a number of people have provided helpful tutorials.

The script doesn't do any styling whatsoever. However, it is capable of filtering OSM data into different Illustrator layers - say, a buildings layer, a primary roads layer, a waterway layer, and so on - to make the styling process easier.

I've used this approach many times to create print maps from OSM data and it works well.

The second option is to use Mapnik, which is the core of Mapbox Studio Classic. However, instead of asking for output in a raster format such as .png, you configure it to produce PDF maps. This is achieved by using the Cairo renderer rather than the default AGG.

This way, you do all your styling in CartoCSS, load your data into an OSM database, and then tell Mapnik to make the map. It requires quite a lot of hacking (most usually with Python, though I use Ruby) to get it to work: PDF is a fairly minority pursuit for Mapnik. However, the results can be surprisingly good. The PDF map export feature on cycle.travel is one place I use this approach.

permanent link

answered 12 Nov '15, 15:59

Richard's gravatar image

Richard ♦
accept rate: 19%

edited 12 Nov '15, 16:00

What are the benefits of these approaches over Mapbox Studio? I'm also surprised to see you recommend output from mapnik to pdf, rather than svg. It seems that svg would be an easier format to work with, to add title, legend etc.

(12 Nov '15, 19:57) keithonearth

I use Adobe Illustrator and its SVG import, put simply, doesn't work properly. If you generate a PDF from Mapnik, it will usually look the same in Illustrator as long as you have the same fonts. If you generate an SVG, it will look like a pile of multi-coloured spaghetti with some random letters scattered all over it.

(12 Nov '15, 22:33) Richard ♦

You might also consider the non-open-software but free-of-charge "Maperitive", a windows program that runs fine on Linux under Mono. It has its own styling language, different from that of TileMill, and it can generate SVG output that can be post-processed with Inkscape. This is useful especially if you want to make some changes that go beyond "all features that have the attribute X should be painted like this" but where you want to style a couple of individual features differently - this is easy to do once you have the data in Inkscape.

permanent link

answered 13 Nov '15, 22:35

Frederik%20Ramm's gravatar image

Frederik Ramm ♦
accept rate: 24%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 11 Nov '15, 21:10

question was seen: 4,115 times

last updated: 17 Nov '15, 05:56

powered by OSQA