Select to view content in your preferred language

How to mask the labels on contour lines?

9989
5
Jump to solution
04-27-2016 05:19 AM
RickCheney
Frequent Contributor

I am using ArcMap (ArcGIS for Desktop Advanced)

I have a map in ArcMap which has elevation contour lines.  I tried to follow the directions at this link: ArcGIS Desktop  and it seemed to "mask" the entire contour line for every contour line.

GUID-2F235085-FE6A-4237-BB96-25CD6EE6C26D-web.gif

GUID-FE9C4A85-BF28-43B6-8934-A466B42B2279-web.gif

Also, the drop-down menu for Mask Kind is greyed out so I can't choose Convex Hull.

How can I make this work as shown in the pictures?

I got this to work following the instructions at this webpage:  Variable depth masking: Contour label example | ArcGIS Blog

A couple of tips, when you convert labels to Annotation, don't Store Annotation "in the map", check the radio button to store the annotation "In a database".  The last step is to use the Advanced Drawing Options (in the instructions).

0 Kudos
1 Solution

Accepted Solutions
WilliamMortimer
Regular Contributor

Hi Rick,

Hopefully the following will give you the result you need:

First up you need to create annotation for your contours. - Esri does have a contour label setting in maplex that you should use to get the best results.

Next take the annotation you have - and create masks for them. You may need to experiment on a distance for your masks, as you don't want to block out to many contours in some locations.

Remember to mask only your 'placed' annotation - other wise you might have masks blocking contours where you have no annotation.

Add the masks to your map and use advance drawing settings to mask the contour lines.

An alternative is to use the masks to clip your contours - but the advance drawing options seems to work fine.

Hope this helps,

William.

ESRI link below should help:

Labeling using the Contour Placement style—Help | ArcGIS for Desktop

View solution in original post

5 Replies
NeilAyres
MVP Alum

Normally just do this with the labeling tab on the features class properties.

Pick the label position (along the line), parallel.

Then set the text to have a halo around it, so it masks the line underneath.

RickCheney
Frequent Contributor

I tried the halo but it stays the same color no matter what color the map beneath it is.  The halo works for contour lines on a white background but in the example below the mask would stand out against the various colors in the background.

GUID-2F235085-FE6A-4237-BB96-25CD6EE6C26D-web.gif

0 Kudos
WilliamMortimer
Regular Contributor

Hi Rick,

Hopefully the following will give you the result you need:

First up you need to create annotation for your contours. - Esri does have a contour label setting in maplex that you should use to get the best results.

Next take the annotation you have - and create masks for them. You may need to experiment on a distance for your masks, as you don't want to block out to many contours in some locations.

Remember to mask only your 'placed' annotation - other wise you might have masks blocking contours where you have no annotation.

Add the masks to your map and use advance drawing settings to mask the contour lines.

An alternative is to use the masks to clip your contours - but the advance drawing options seems to work fine.

Hope this helps,

William.

ESRI link below should help:

Labeling using the Contour Placement style—Help | ArcGIS for Desktop

RickCheney
Frequent Contributor

Thank you so much, I really appreciate your advice.  The link is very helpful.  I followed the steps, it's easier than it seems.  The contour labels look perfect now.

0 Kudos
Joseph_Kinyon
Frequent Contributor

I believe anyone looking for this technique in ArcMap 10.x this workflow is used 

Variable depth masking: Contour label example | ArcGIS Blog 

in ArcGIS Pro 2.x it is layer masking, but this current write up needs some clarity

Mask features—ArcGIS Pro | ArcGIS Desktop 

0 Kudos