6

I am using QGIS with quickmapservices for my basemaps. In the composer the image looks good, with labels appropriately sized.

enter image description here

When I go to print the PDF however, the scales on everything is much smaller, yielding unreadable labels for street names, etc.

enter image description here

Is there any way at all I can mitigate this, without taking a screenshot of each atlassed image and pasting it into my final result?

  • 2
    the reason is the dpi changes when you print it which causes the scale to change as that is in pixels/metre. – Ian Turton Apr 27 '16 at 15:28
  • @iant yes this is the reason! Is there no way to make the DPI match what is displayed in the preview? – twilliams Apr 27 '16 at 18:19
  • You can change the dpi of the canvas in the component menu to 96 – Ian Turton Apr 27 '16 at 18:31
  • This thread presumably also applies here: gis.stackexchange.com/questions/92315/… – johns Apr 27 '16 at 18:37
  • 2
    Actually, I think I've found a solution! See github.com/nextgis/quickmapservices/issues/43. I haven't tested in-depth, but it seems to work - not sure why it isn't the default option though! – robintw Jul 12 '16 at 18:55
2

Well, you could use a program named MOBAC to create an Atlas of raster tiles at the Zoom you want by using the WMS of the basemap you selected. Since the data extracted is georeferenced this should be quite easy. Your basemap might even be included in the starter pack from what i see, so no need to tinker with some XML queries if you're lucky. Be carefull however, do set your output data and format right before using MOBAC. Make sure you've got my sqlite database as your output, i find it easier to load that way.

If the WMS isn't already set you'll need to go inside the mapsources folder inside MOBAC and create a new xml file containing the following informations:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <customWmsMapSource>
  <name>Name inside MOBAC</name>
  <minZoom>0</minZoom>
  <maxZoom>18</maxZoom>
  <tileType>TIF</tileType>
  <version>1.1.1</version>
  <layers>wanted_layer's_name_here</layers>
  <url> Url of the wms </url>
  <coordinatesystem>wanted output coordinates system</coordinatesystem>
  <aditionalparameters></aditionalparameters>
  <backgroundColor>#000000</backgroundColor>
</customWmsMapSource>

Another way to solve your issue is to simply use the function export as image built in QGIS to export your basemap visualisation, without the vector data you've applied to it, as a Tif tile.

Their has to be some faster way to do this thaugh.

  • Export as image doesn't work for me, as it's the same size labels. I don't yet understand the rest of your response about MOBAC so I need to do a little research. – twilliams Apr 27 '16 at 17:50
  • Mobac is a program called mobile atlas creator, it can read the content of WMS servers and convert it into an Atlas of your choice. Pretty neat when you need to consult layers offline. – Moreau Colin Apr 28 '16 at 6:51
  • The problem is I have 75 different features at wildly varying scales and I don't see a good way to map from the extents I have in my atlas to mobac. I can't even seem to upload a shapefile to generate the extents I need. – twilliams Apr 28 '16 at 14:38
2

I was having the same trouble just now. After further investigation, I found that I accidentally had changed the label's size unit type. Had to play around with it for a while but millimeter type seemed to work just fine. I previously had it at Pixel.

That seemed to export my labels just fine. Hope it helps.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.