7

This question already has an answer here:

I want to place the labeling under a layer. In QGIS 2.2 apparently the label appears automatically at the top. Can someone help me. (see attachment)

enter image description here

example: enter image description here

marked as duplicate by Ian Turton Mar 3 '17 at 10:08

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • 2
    I do not think there is a way to do this. It also begs the question WHY do you want to do it as it is likely to make your labels hard to read (if at all)? That is why they default to being drawn on top (for legibility). You can move the label relative to the line which may achieve what you actually need (rather than apparently want). – MappaGnosis Jun 25 '14 at 7:01
  • Is the text “Erlenring” a label of the red/blue line layer? Or does the label “Erlenring” belongs to a second layer (e.g. to the white street polygon)? – Jens Jun 25 '14 at 8:16
  • I thought that it would be easy to do by making two layers: First layer with labels and line width=0. This makes that only labels are drawn. Then place the roads layer again but this time draw just the lines an top of the label layer. Unfortunately the trick did not work but labels are still drawn on top of the other layer. – user30184 Jun 25 '14 at 8:50
  • 1
    It is still not clear WHY you want the label under the line. In your situation above, the label could refer to the white road, the blue line or the pink one whether it is above, below or to one side as per Jens comment. Therefore I suggest you colour your labels e.g. dark blue text for the blue line, dark pink or purple text for the pink line and so on, possibly also using italics on one layer and not on another etc. You will have to experiment to get a readable map but in your situation, position alone is not a reliable way of understanding the label. – MappaGnosis Jun 25 '14 at 9:06
  • 3
    I could imagine that user8839 uses a cadastre map as a base map for what looks like electricity or freshwater lines. In this case you would like labels for some orientation, but they should never sit on top of the actual data. This is easily done in any CAD, but apparently not so in QGIS. – SAnderka Jun 25 '14 at 9:13
6

Its not currently possible in QGIS. You'd need to export the map in a vector format (eg, export to pdf using a print composer) and then rearrange the layers in an illustration program such as Inkscape or illustrator.

1

Since labels are always drawn on top of all layers I would follow the approach MappaGnosis has proposed: move the label relative to the line.

To achieve this you can move each label manually by mouse (use move label tool): enter image description here

Please note: The manual placement of a label is only good for one scale. If you change the scale of your map the label placement will change too.

Before you manually place labels you have to add fields (x,y,rotation) and make some settings. In this answer of workweek you find step-by-step instructions how to do this.

0

Ok, based on your German street name I'm guessing you're either in Germany, Austria or Switzerland. At least in Germany I know for sure that most, if not all federal states do offer their cadastral map (e.g. ALKIS) as online WMS services (although probably for a small yearly fee, it's about 50 € for Brandenburg).

You might want to use one of these as base layer to circumvent the whole labeling issue (and as a bonus always have up to date cadastral maps).

0

a possible solution :

  • export from the composer the map in a raster format, with only the labels being activated (everything else being hidden, including the line vector)
  • add the raster from the composer in your view, assign a transparent value (likely white)
  • Place this raster layer below the vector ...

The problem may be that your raster file will require a high resolution in order to accurately display the font, especially if you have a lot of labels to work. You may also have some grey values to deal with in your raster.

-2

Unfortunately I use QGIS with German language, but it should be similar in English. At the layer properties You can control labeling - see the picture below.Labeling Properties

  • 5
    This will not do what the OP asks for. This will place the label vertically below the line not literally underneath it (as in the OP's picture) – MappaGnosis Jun 25 '14 at 6:57
  • @Hartmut: which QGIS version do they use? – user8839 Jun 25 '14 at 7:16
  • I use QGIS 2.2.0 - Valmiera; and you are right, I missunderstood the question. – Hartmut Jun 25 '14 at 8:07

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