Monochrome Mapping Competition

There are a lot of map competitions out there. But to the best of my knowledge, none is devoted specifically to the appreciation of monochrome maps. And it’s time to remedy that. I love working in monochrome (and gave a talk about it at NACIS 2018). I think color is overused, and the challenges of a limited palette can be liberating. I want to draw more attention to the great work that mapmakers are doing in this medium, and encourage more people to experience the joy of composing with only one ink.

So, I’m hereby declaring a Monochrome Mapping Competition! Please help spread the word, so that we can reach mappers everywhere. It’s starting small, but I truly want this to grow into a respected competition that recognizes great work in an under-appreciated subset of the cartographic arts.

How to Enter

Option 1 (preferred): Fill out this form (requires Google login).

Option 2: Email your map (or, a link, if it’s a web map) to Include a title and list of contributors for each work.

Deadline: June 15th, 2019

Rules and Freedoms

  • Entries must be in monochrome. What counts as “monochrome”? Well, it can be a little complicated, depending on how creative you want to get. Here’s a quick explanation of what I’m looking for.
  • They don’t have to be greyscale. A green and white map is as welcome as a black and white map.
  • You may submit up to three entries.
  • All entries need to have been completed in the last five years or so (after January 1st, 2014). This is a competition honoring the fact that monochrome is a part of contemporary cartography.
  • Entries may be at any size and in any medium — hand-drawn, digital, static, interactive, etc. If you’re not sure if it counts, enter it and let me and the judges figure that out.
  • You can suggest a better name for the competition. “Monochrome Mapping Competition” is a bit of placeholder for now.

How you Win

I’ll collect a (digital) pile of map submissions from all of you folks. Then I’ll turn them over to a panel of judges, who will look over and score each one. The highest-scoring maps (mostly: see below) will end up being in the Final Selection — the winners. The exact number of selections is going to depend a bit on how many maps are submitted.

If this sounds familiar, it’s basically the process that Tim Wallace and I developed for the Atlas of Design. There is no one “winner,” and there are no hard categories — the process recognizes that many items can all be co-equally great, each quite different in appearance and pleasing to separate audiences.

The Final Selection of winners isn’t based 100% on the judges’ scores; there are a couple of adjustments I may make, as the Curator (a title I just now made up for the competition-runner). No one mapmaker can appear more than once in the Final Selection, so if they have several that are high-scoring, I will choose one of them. Likewise, if I see a particular map type really dominating (like shaded relief maps, for example), and it’s monopolizing all the top spots, I might put a cap on the number of places for that type in the Final Selection. So, in sum: the judges’ scores are the main factor in consideration, but I may make adjustments when choosing the final winners to ensure that no one person, company, or map type takes up a bunch of the spotlight.

What you Win

Honor and glory. There’s no money at stake here, and we’re not publishing a book of winners (maybe someday). But you’ll be touted by me and others, and all the maps in the Final Selection will be posted here on this very blog. Each selection will also be accompanied by a brief commentary, written by one of the judges, giving us all a better understanding of what makes each map great.


I’m very excited to say that a bunch of really awesome people have signed up to judge the maps. Click here to read the list, alongside a discussion of how the panel was chosen.

Note that judges can also enter the competition. They’ll simply step aside and recuse themselves from judging their own work, and it will be scored by the rest of the panel.

Those are all the details. Please enter your work and spread the word around the globe. I’m excited to see what everyone comes up with!

Upcoming Live Events


Since my first live stream went so well, I’m extending the experiment! I’ll be doing (at least) three more in the coming months, on the 1st Wednesday of each, at noon Central Time. So mark your calendars and join me as I try out a few different formats.

Videos will be streamed at

You can also subscribe to me on YouTube. If you do that and you click “set Reminder,” you’ll be notified when I go live, just in case you forget.

Hope to see you there!

A Live Experiment in Disassembling a Map

Earlier this week, I conducted an experiment in live broadcasting. I took a map that I’d previously made and spent nearly an hour going through it layer-by-layer, discussing my design rationale and techniques. If you’re interested, have a look at the recording.

Livestreaming is something I’ve wanted to do for a while — I’ve had conversations with colleagues on and off for months about it. There’s an appeal to me in creating an interactive environment for talking about maps. Doing things live also saves me time, because if I were to create something pre-recorded, I would spend a lot of time obsessing about small details. A ten minute video can take me hours to record, re-record, edit, etc. Instead, I can just start the stream and let it happen.

I’m hoping to keep doing things like this during the course of this year. I’ll still put text content up here from time to time, of course. For tutorials, I prefer to offer text, because it’s easily searchable and doesn’t require sound. But, in addition to those, I’m hoping to get a chance to be more off-the-cuff with all of you.

Whenever I figure out my next streaming event, I’ll be announcing it on Twitter.

Financial Transparency: 2018 Edition

As is now my annual tradition, it’s time for me to tell everyone how much money I make.

As a freelancer, I often wonder how I am doing financially as compared to my colleagues. Not out of a sense of competition, but just to answer the persistent question: is this normal? Am I earning a “typical” living? Do I get an unusually small or large amount of money from selling prints? Things like that, born of curiosity. I can look at the great work of a colleague and think it’s valuable, but the big question is: does the rest of the world value their skills the way that I do?

I find the financial opacity of the freelance world a bit intimidating, and I suspect that some others do, too—particularly those who are interested in freelancing, but haven’t yet jumped in. So I’d like to do my part to lend transparency by laying out my financial picture for all of you.

Freelance Earnings

I have been freelancing since I took my Master’s degree from UW–Madison in May 2010, but things didn’t really take off until 2012, so let’s start there. My gross earnings from freelance cartography have been:

2012: $12,016.34
2013: $20,352.75
2014: $8,508.58
2015: $10,881.25
2016: $22,795.00
2017: $48,775.38 [$45,000 from one big contract, so it’s a bit atypical].
2018: $17,795.60

I have also earned money from some other non-mapping freelance work. I do editing and layout for Cartographic Perspectives, and I’ve done some bits of paid writing, other design work, etc. This income isn’t terribly relevant to those who are wondering about the mapmaking business, but I’ll include it here for the sake of completeness:

2012: $1,128.08
2013: $1,528.00
2014: $7,014.00
2015: $10,194.00
2016: $2,000.00
2017: $9,925.00
2018: $7,505.00

These bits of side work, as well as my teaching (below), have been very helpful in leaner years.


I teach from time to time at UW–Madison, covering the Introductory Cartography course. Again, not too relevant to the subject of freelance earnings, but perhaps interesting if you’re curious about what adjunct teaching pays. My pre-tax pay for one semester of a 40% appointment is $7,182.18 (formerly $6,954.39 from 2010–2015).  This number seems to compare favorably with what I’ve seen posted at other institutions, or heard from colleagues elsewhere.


I do a fair amount of pro bono work, and I’ve been much more shameless about asking for support for my tutorials, Project Linework, and other resources that people seem to draw value from etc.

2012: $37.00
2018: $1,711.08 (a number that completely floors me)

Speaking of donations, here are some handy buttons if you want to help empower me to keep sharing cartographic knowledge and resources.

Sales of Prints

Finally, the last piece of the puzzle is sales of prints. Instead of making maps for clients, I sometimes (or often) spend time making maps for no one in particular. And then I’ll put them up on Zazzle in case anyone wants to buy them. I’ve also occasionally printed maps locally and sold them through an art store or by word of mouth. But Zazzle is where almost all of my sales happen.

My earnings from sales of prints:

2012: $772.39
2013: $678.68
2014: $270.19
2015: $116.52
2016: $797.54
2017: $342.78
2018: $354.10

And, if you’re curious as to what sells and what doesn’t, here’s a breakdown of Zazzle sales:

Fame and exposure are generally free, and often much more plentiful than actual payment. It takes a lot of clicks before someone actually buys—I have also seen this behind the scenes with the Atlas of Design. I often see colleagues whose work gets a lot of attention, and who are offering cool prints, and wonder if they are receiving lots of praise with little money behind it.

Concluding Thoughts

I never really intended to be a freelancer, because I dislike instability, and the numbers above fluctuate wildly. But I fell into it accidentally anyway, and it’s been great, though it’s definitely not a life I would have been able to choose if I had to worry, for example, about dependents.

I also haven’t been able to save for retirement very much these last few years, as I’ve been focused on more day-to-day expenses. But, things have been looking up lately, and I’ve started putting at least a little bit away again.

I hope all this stuff above offers some useful insight as to one freelancer’s life. I’m sure some others earn more, and some others earn less. I’d encourage others who are comfortable doing so to share their own financial information, to make the picture a little broader.

What I did in 2018: An Annual Report

Friends, this last year I’ve been more bold about asking for donations. And I’ve been quite honestly amazed by the level of support that I’ve received. I love giving back to my fellow mapmakers, and their generosity in return has been humbling and gratifying. Thank you all so much; that includes not just those who have opened their wallets, but all of you who have offered advice, aid, and kind words.

Since the start of 2018, I’ve been keeping organized track of some of the ways I’ve tried to contribute to the cartographic community, aided by your support. I want to give you what will be, I hope, the first of an annual series of reports. So let’s jump in.

In no particular order, in 2018, I:

  • put up a detailed new tutorial on my blog (Smart Type Halos in Photoshop and Illustrator)
  • made a couple of updates to my Shaded Relief in Blender tutorial (thanks Dunstan Orchard and Anton van Tetering for pointing out improvements).
  • spent a while writing up a walkthrough of one of my mapping projects: On Airline Mapping
  • publishedThe Power of Appearances,” an adaptation/combination/rewrite of two of my earlier blog posts, in Cartographic Perspectives
  • publishedA Freelancer’s Approach to Teaching Cartography,” a reflection on how my mapmaking career informs my pedagogical approach, also in Cartographic Perspectives.
  • presented on monochrome mapping (a favorite of mine) at the 2018 NACIS Annual Meeting
  • contributed a new map of the Kingdom of Pergamon to Wikipedia, in the spirit of the old FixWikiMaps project
  • built a new low-fi polygon linework set for Project Linework called “1981,” which I hope you’ll make use of
  • conducted a mini survey of my fellow cartographers on the typefaces they like to use
  • conducted, along with my colleague Aly Olivierre, a sizeable survey to help bring transparency to how much freelance mapmakers get paid
  • completed my final year as Director of Operations for NACIS; I’ll still be helping out with the transition in the coming year as Nick Martinelli takes over for me
  • undertook an ongoing effort to reprint the first three volumes of the Atlas of Design, including creating an all-new layout for Volume 1.
  • made a bunch of maps on a typewriter and wrote a blog post on lessons learned
  • answered a variety of questions on Twitter and via email

As we move into 2019, I hope to continue to merit the support you have shown me. I never know exactly how much I’ll be able to do so in a given year, but I do know that I fully intend to keep up my efforts to contribute to the cartographic community. You have all taught me so much, and I will continue repay the favor.

If you’d like to support my efforts, please click one of these handy buttons.

Typewriter Cartography

This is my father’s manual typewriter, a Royal Safari II. Or maybe it’s mine — I appropriated it quite a long time ago.


I remember playing with it a bit as a child in the 1980s, but for the most part I’ve rarely used it. But I’ve kept it around anyway, because I’ve always had a nostalgia for old technologies. Maybe I liked the idea of being a person who owns a typewriter.

A couple of weeks ago, I remembered that it was in the basement, and I thought — as I do from time to time — about how nice it would be to have a reason for using it. And then it occurred to me that I should just go with my default reason: maps.

After a few hours of planning and typing, I managed to create a typewriter map and I put it out on Twitter, where it ended up being by far the most popular thing I’ve ever put on that platform. Or probably ever, anywhere.

It’s probably of no surprise to anyone who’s known me for more than five minutes that I chose to start this project by mapping my homeland in the Great Lakes. I think it’s always useful to begin with somewhere familiar when trying something new, because you can use your local knowledge to confirm whether or not the technique is doing justice to the place.

Click here if you want to see a giant high-resolution scan. It’s full of smudges from the ribbon, alongside errors corrected with a generous application of Wite-Out. But I’m quite pleased with its messy, organic, analog nature. Other seemed to be, too.

I hadn’t expected such a warm reception from the internet, but even before that happened, I had considered my experiment a success. So I followed it up with a couple more maps, to get a feel for some different styles. You can click on either of them to have a look in more detail.

It was an interesting diversion from the digital precision of my normal workflow. Sometimes fun, sometimes frustrating, but in any case a chance to mess around with some new challenges.

The ideas here aren’t new. John Krygier has a post about typewriter mapping. Early computer graphics, such as ASCII art, along with early mapping software (like SYMAP), use essentially the same style as what I am doing (though mine is much more rudimentary): constructing images through individual characters.

In any case, now that you’ve seen the maps, read on to learn more about the challenges and decisions that went into their creation.

While this sort of work is cool and interesting, and I give away high-resolution versions of it for free, I can only do it when I take time away from my regular paid client work. If you derive some value from what you’ve seen here, you are welcome to make a donation to support my continued efforts.

Map 1: Rivers of Lake Michigan


Though I just called this project a “diversion” from a digital workflow, all of these maps actually started on the computer. For this particular one, I began with a grid in Adobe Illustrator. Each rectangle in the grid represented one character position on the typewriter. There are ten characters to the inch, at an aspect ratio of 0.6. The final grid was 75 × 60, which would fill a 7.5″ × 10″ space.


Atop that, I dropped some data from Natural Earth. And from there, I began “tracing”: plotting out which characters I could type to represent the rivers and coastline, and where each one should go.


After a little experimentation, I decided that if I wanted to draw linear features, there were three characters that were best to use: ! / _. Together, I could create rudimentary lines that roughly connected together in a pseudo-vector style, even if the typewriter grid itself is basically a raster.

A backslash (\) would also have been great, but that was a character invented pretty much exclusively for use on computers, so it’s not found on my typewriter. As such, I had diagonal lines that sloped somewhat cleanly in one direction, while they stairstepped back down in the opposite direction. Compare the coastline on both sides of Lake Michigan, below.


For the state boundaries, I decided to try something different. I simply filled a bunch of “pixels” in with asterisks, rather than using more “linear”-looking characters. A raster, rather than a pseudo-vector, approach. It creates a small visual distinction between the boundaries and the coastline, which might be pretty hard to do otherwise. There aren’t a lot of symbology options in a situation like this.

The biggest of those options, though, is color: my typewriter has a two-color ribbon, so I tried to make the most of it by setting the rivers off in red. This also helped with a labeling problem: I could name the rivers in red, to distinguish them from any other features. Other than color, though, the only way to vary my labels was to set some in capitals, and some in title case. I’m used to labeling most every class of feature on a map in a different style, but that’s just not possible here. My islands and my cities, for example, look the same (black, title case). The states are lakes are the same, too (black, capitals).

Once I had spent a couple of hours or so on developing a plan, it was time to start typing. I loaded some paper into the typewriter and got to work. At first, I proceeded very linearly: left-to-right, top-to-bottom. But that was tedious. There’s a lot of white space in this pattern, so sometimes I was forced to hit the space bar a few dozen times to advance to the next character on the line, and there was always a chance I might miscount and make a mistake. More importantly, though, following this workflow revealed a problem with my typewriter. Whenever I hit the carriage return lever to go to the next line, there was a chance that I’d somehow get a misalignment. Have a look at these patterns I typed:


Notice how the characters don’t all line up along the left side, but then become more aligned on the right? I’m not sure why it kept happening, but it seemed most often to appear when I would use the carriage return lever. So, instead, I shifter to a different style of typing. I would start to trace features somewhat linearly. For the top left part of the map, for example, I began by typing three asterisks, then I manually moved down one line, then typed four more, then moved down another line, and typed four more, etc. following the line of the state border.


I manually moved the paper up and down and used the backspace and spacebar keys to align myself to where I needed to be at any time. In this way, I mostly avoided misalignments, though smaller ones still kept creeping in. About three-quarters of the way down the page I got a minor leftward shift that you can see in the final product. You can also see where I typed some periods over again to check if it was just my imagination or if it really was misaligned.


Fortunately, it wasn’t enough to ruin my work, but it was a constant danger, and something I am still trying to figure out.

The final product has various interesting smudges where the paper accidentally contacted the ribbon. In particular, I noticed that typing in red always produced a faint black “shadow” a couple of lines above. When the slug hit the red part of the ribbon, a small portion of it would lightly hit the black portion of the ribbon, too. Later on, I started holding scrap paper over my map in order to prevent this, so that the black shadow would go on the scrap.


In sum: my typewriter is not a precision instrument. This makes it a somewhat uncomfortable-feeling tool for a detail-oriented designer like me. I like being able to zoom in to 64,000% in Illustrator and correct errors that are small enough that no human eye could possibly ever see them. But, there’s something attractive about the organic messiness of the typewriter.

Once I was done, I scanned it, and then turned it over to the Robinson Map Library, since I wasn’t sure what to do with it now that I was finished. So, come to Madison if you ever want to see the real thing (this goes for all three maps).

Map 2: Shadow Contours


For this one, I wanted to try and see if I could squeeze some sort of terrain representation out of the typewriter. As I mentioned, early digital graphics used printed characters to create images. And shading could be simulated by using characters of different darkness. The ASCII Art page on Wikipedia has some examples of this.

My goal was to do something like illuminated contours: lines that would get darker on the lower-right side and lighter on the upper-left, to create a depth illusion. So I needed to do something rather like what John Nelson calls “Aspect-Aware Contours.”

Setting this one up required a whole different workflow than my first map. I began with a DEM of Michigan that I always keep on my Google Drive, ready to test out a terrain technique at a moment’s notice:


First off, I cropped and shrank it down to 75 × 100 pixels. Then I further compressed the vertical dimension to 60 pixels. These two separate steps were necessary because the pixels aren’t square on my typewriter, as we saw in the grid earlier: they are taller than they are wide. I needed something that had the same aspect ratio as a 75 × 100 image, but once I had the overall image aspect ratio correct, I needed it to really only use 60 characters vertically, since each character is so tall. In the images below it looks a little squished because it’s being shown with square pixels. But in the end it stretches back out correctly.


From there, I classified it into just a few elevation levels, and smoothed them out a bit via a median filter.


And then it was time to calculate the aspect of each pixel in the raster.


Flat areas have no aspect. Pixels on the boundary between elevation classes, on the other hand, are assigned values based on which direction they are facing. So, now I could tell which areas would be in shadow (facing toward the lower right), and which would be lighter (facing upper left). No, I didn’t compensate for the vertical stretching when calculating aspect, but I should have.

The aspect calculation produced a double line of pixels, one on each side of the boundary between classes. But I really only needed a single line of pixels to represent the contours, so I first cleaned those up. And then I grouped the various aspects into three shades: light, medium, and dark, based on the particular direction they were facing.


Now I had contours with some shading. All that was left was to turn them into individual typewriter characters. I converted this raster into an ASCII file, which looks like this:

Screen Shot 2018-11-25 at 10.46.06 PM.png

Each pixel is represented by a number, and there are four numbers: one for light, one for medium, one for dark, and one for white. From there, it was simply a matter of doing a Find & Replace in a word processor to convert them to the three shading characters I had chosen to use: . + $.


And from there, it was just a matter of typing things out on the typewriter.


I tried a couple of other variations on this idea, as well. I initially hoped to do a proper set of Tanaka contours, with a medium-grey background and white highlights. But the white areas weren’t obvious enough amidst all the typed characters, so it wasn’t working.


Keeping white as the background color helped a lot, so I decided to go with contours that started with at least some darkness to them even on their light side. I also tried doing it with five different shades: . : + & $.


However, I think that was too many — the distinctions aren’t really sufficiently clear between some of them, especially when each character varies so much in darkness just based on how hard I hit the key. So, when I had to halt that particular attempt partway through due to me misreading part of my pattern, I decided to start over with a simpler set of three characters. I reclassified the aspect analysis and re-converted it to characters, and that became the basis of the final attempt described above.

Map 3: Shaded Relief


Since I had been at least modestly successful applying shading to contours, I decided finally to see if I could render a rudimentary shaded relief on the typewriter, as well. I knew it wouldn’t look particularly realistic, but I was hoping it would at least be sufficient.

This time I decided to change geographies and map Africa. As with the previous map, I took a DEM and shrank it down to 75 × 60 pixels, then I generated a shaded relief. I did it in Blender, but I turned off the various realistic shadows, as I thought they’d muddle things up. The end result was basically just a simple GIS hillshade.


did try to compensate for the fact that the image, which had square pixels, would get stretched vertically once it made it to the typewriter. I set my lighting angle to be about 15° off from the typical upper-left light source that is used in shaded relief. However, I think I shifted it 15° in the wrong direction. But the end result seemed to come out well enough.

Once I had the relief, I then classified it into five levels: white, and four shades of grey. While I’d used three shades for my contour map, after having decided five was too many, this time I decided to split the difference.


And then, as before, I converted it to text characters. This time, I used . + @ $ as my set of shades.

Screen Shot 2018-11-26 at 10.39.06 AM.png

I brought this into Illustrator and added it to the same planning grid that I’d developed for my first map. I also brought in more Natural Earth data so that I could include a coastline and some rivers. The relief would be in shades of black, and the other features would be in red.

Screen Shot 2018-11-26 at 10.42.22 AM.png

The end result would be a combination of the techniques from the first map (mostly pseudo-vector) and the second map (more raster-y).

I removed bits of the relief that crept into the ocean, and also in order to make space for the rivers and a few labels I decided to cram in. After about three hours, I had the whole thing planned out. I printed my pattern and typed it up. I had a few false starts where I missed or added a character here or there, but after another three or four hours, I finished the third map.


This one has fewer of those “shadows” that accompany the use of the red portion of the ribbon. I spent a lot of time with a piece of scrap paper trying to prevent those, mostly successfully. This map also only involved me making two mistakes that required Wite-Out. I’m clearly getting better, as the first map had probably closer to ten.

The shaded relief is obviously pretty coarse. I think close up it’s more of just an interesting texture, rather than anything that suggests depth. But, it was still fun to try. If you shrink the map, or step far away from it, or blur it, the relief starts to come out a little bit as the eye focuses less on the individual characters and more on the pattern. I think that’s also true of the contour map.


I may do some more maps later on, but I think now that I’ve explored some of the basic challenges of typewriter mapping, I’ve reached a good point to pause in my efforts. Maybe I’ll come back to it some other time, or maybe I’ll get diverted into another novelty use of old technology. Or maybe I’ll spend time doing all the stuff I was supposed to be doing instead of this. We’ll see.

Smart Type Halos in Photoshop and Illustrator

Gentle readers, I am back again with yet another tutorial that relates to the legibility of type. I love the art of map labeling, and the fact that this will be my third post on integrating type into a map suggests that I’ve probably thought way too much about it. While my two previous posts were on type knockouts, this time around, I’m going to talk about another favorite trick of mine: making type halos that appear only when needed.

Notice in the map below that there’s a faint glow around parts of the label for the Cadillac Plain. You can see it most prominently on the left side of the label. By the time you get to the right side of the label, it’s mostly gone.


Clipped from the map featured in my Terrain in Photoshop: Layer by Layer walkthrough.

Notice what happens when I turn off the label, but leave that glowing halo. You can see that it shows up only in some areas.


Also, notice how the Lake Mitchell halo is much more prominent than the Lake Missaukee one.

Specifically, it pops up only where the underlying map is darkest, and then it gracefully fades away as the map lightens. This halo is a tool that we bring in only when it’s necessary to help the label’s legibility. When the map is light, the dark label survives fine, and a glow serves no purpose. The labels only need a boost when the underlying map is darker, since the contrast between the label and the map will be weaker. You can see the value that the glow brings by looking at how the labels appear without it.


We don’t want to overuse the glow when it’s unnecessary, since it’s covering up our map and it feels clunky when it’s used in places where it’s not needed. Compare the first image, with the glow that fades in-and-out, with a glow that doesn’t change based on its context.


Now the label for Lake Missaukee has a glow around it, but it’s not really necessary. It looks a little silly, and/or heavy-handed. A needless intervention.

So, how do we make these variable label halos, that fade in and out as needed? Well, that depends on what software we’re working in. Let’s start with Photoshop.

In Photoshop

Let’s start with a map, and some labels. You might have imported these labels (and/or parts of the map) from Illustrator, or perhaps you made the whole thing in Photoshop. It doesn’t really matter. Here’s my starting setup, though. For simplicity in this demonstration, I have a single map layer, and a group with a few labels in it.


Click for a larger version (you can do this with most of the screenshots below).

To start, I’m going to need to make a copy of the Labels group. Click on the it (in the Layers panel) and drag it down to the bottom until you’re hovering over the icon that looks like a piece of paper with a corner turned up. Release the mouse and you’ll have a copy of your group.


Double click directly on the name of one of these groups to rename it. Call the topmost one “Labels” and the bottom one “Glows” (you can also click and drag group in the Layers panel to re-order them). Then, turn the Labels group off by clicking on the eyeball icon to the left of the group name. We’ll be setting this aside until later.

Now I need to make some nice glowing halos. I can do that selecting the group that contains my labels, then clicking on the fx icon found at the bottom of the layers panel, and choosing Outer Glow.


There are a lot of settings here — probably more than you’d need in most situations. They’re all worth playing around with to understand, but for simplicity, let’s focus on just a few.

For color I’m going to go with a white halo, set at 60% opacity, so that my glow simply whitens up my map a bit. And if it’s not already set, the normal blending mode is probably called for here, so that I don’t have this white color blending into the map in unexpected ways.

The size slider controls how far from the type your halo will extend, and the spread slider controls how soft and fuzzy its edges are. The settings you see in my example above are not likely to be the best settings for you. This is something you need to experiment with — there’s no one-size-fits-all sort of answer that I can give you. The overall goal is to make something that’s effective, but subtle. It should give the labels a boost, but not be too noticeable on its own.

Next up, it’s time to start making things fade in and out. Select the Glows group and then go down to the bottom of the Layers panel and click on the image of a rectangle with a circular hole.


This creates an opacity mask for the group. We’ve worked with these before, if you’ve been following along with my other tutorials. If not, go check out the Opacity Masking section of this tutorial before proceeding, which will explain the basic concept (though in an Illustrator, rather than a Photoshop, context). For now, our mask is empty, and so it’s represented by a black rectangle, which means: hide everything in this layer.


We’re going to put a copy of our underlying map into this mask, so that the glows get more or less opaque as the map gets darker or lighter. I’m going to go click on my map layer, hit Cmd-A (or Ctrl-A, if on a PC) to select the whole thing (or go to the Select menu at the top and choose All), and then I’m going to copy it (Cmd-C on a Mac or Ctrl-C on a PC) to the clipboard. From there, Alt-click on the opacity mask to go inside. To paste in our map, go to the top menu and choose Edit  Paste Special  Paste in Place to ensure that the map ends up in the correct place.


Since we’re in a mask, we’re only working in shades of grey, which correspond to levels of transparency for our glows. Dark means “make the Glows layer very transparent” and white means “leave it opaque.” What that means is, right now, our mask is completely inverted from what we want. Dark areas of the map (where we want our halo to help out) are also dark in the mask, meaning that the halo is being made more transparent. To fix this, hit Cmd-I to invert the mask.


With that, you can Alt-click the mask again to escape it and once again see your map, labels, and glows. Now they’ll begin to fade in/out based on the mask, which is based on the map. The problem, of course, is that our labels are also fading in and out, not just the halos around them.


And this is why we made a second copy of our labels. Turn those back on. They’re untouched by the mask and remain solid, so they cover up the fading labels beneath. Now we have solid labels and fading glows.


From here, you may wish to make some further tweaks, either editing the glow effect, or possibly even the mask. You might use the Levels or Brightness/Contrast adjustments to modify the mask’s overall effect. But the basic idea is now in place: the labels receive more help where they need it, and the glows generally get out of the way when they are useless.

Bonus content: This is a good time to show off a cool feature in Photoshop, even though it’s one that’s unnecessary for this process. Turn Labels group back off for a moment, and then select the Glows group. Right above it on the Layers panel you’ll see an option marked Fill that’s set to 100%. Set that to 0% instead. What this does is get rid of the layer’s main artwork (the labels), while still keeping the glow on the labels. The fill setting is almost exactly like opacity, except it doesn’t operate on any layer effects (like glows). The opacity setting, on the other hand, will make both the labels and the glows get more and more transparent.


So now you’re left with just the glows, and then you can turn the Labels group back on. Again, this is totally unnecessary in this situation, because the labels in the Glows group are hidden by the solid labels in the Labels group, so there’s no need to hide the former. But, this could be handy if you wanted a Labels group that was semitransparent, and you didn’t want it affected by the labels fading in and out in the Glows group underneath.

Double Bonus Content: In the comments below, Rolf points out an even fancier way of doing this, using Photoshop’s “Blend If” sliders, which takes care of this process without needing a mask.

In Illustrator

Now, if you don’t happen to be working in Photoshop, fear not! This same idea works just fine in Illustrator, which also has the ability to create both glows and masks.

Once again, let’s set up a map and some labels. And this time, I’m going to invert things: I’ve got light labels that need a dark halo, rather than the other way around.


I’m going to click on the small circle next to my Labels layer to target its appearance (if you want to know more about appearance attributes in general, I recommend taking a detour and first reading The Power of Appearances, another Illustrator tutorial I posted on here some time back). Then I’ll go up to the Effects menu and choose Stylize → Outer Glow.


There are far fewer settings on the Illustrator version of the Outer Glow (I appreciate that simplicity). Again, they require a little messing around to find the exact look that’s best for your map, so I can’t tell you what to pick. One piece of advice: by default, the blending mode is usually set to “Screen,” which is likely not what you want. I don’t want to get into the mysteries of Adobe’s blending modes, but I’ll simply say that Screen is generally for lightening underlying things. In this case, we want a dark glow, and so if you set the mode to Normal, you’ll get a result that’s probably more in line with what you were expecting.

I’ve set my glow to 45% opacity, a black color, and a 0.5pt blur, and this seems to be enough for my labels to stand out against the lighter areas of the underlying map.


This time, for demonstration purposes, we’ll do things in a bit different order. I’m going to modulate the glow’s opacity, and then I’m going to create a separate, untouched version of the labels. It gives me a chance to show you a couple of other useful things.

As we did in Photoshop, we’re going to put a copy of our underlying map in an opacity mask, to modulate the label glows. In the case of my example map, I’ve got a bunch of hexagons and other stuff in my basemap layer. I’ll copy everything in that layer to the clipboard. Then, I’ll once again target the appearance of my Labels layer by clicking the small circle next to the layer name. From there, I’ll open up the Transparency panel.


Hit the Make Mask button. Once again, we start with an all-black opacity mask, which means: hide everything in this layer. Uncheck the Clip box — this (annoyingly default) setting tells Illustrator: hide everything that falls outside of the bounds of the artwork we have inside our opacity mask. Since we have nothing inside in our opacity mask at the start, everything on our map counts as “outside the bounds of the artwork inside the mask” and is hidden. Unchecking the box turns out mask white, so everything shows up again.


As with Photoshop, Alt-click on the mask (the white rectangle on the right) to go inside. Then go to Edit  Paste in Place to drop our basemap in at just the right location.


Unlike our exercise in Photoshop, we don’t need to invert our mask this time. We want our dark glow to be strongest when the basemap is lightest. When we were working earlier in Photoshop, the opposite was the case: we wanted our glow to fade out when the basemap was lightest, so we needed to invert the mask, so that its light parts became dark and told Photoshop to render the glow invisible.

A note: if, in the future, you do need to hit the Invert Mask button in Illustrator, note that it will have the intended effect, but won’t actually make the mask look any different, as Photoshop does.

Alt-click on the box to the left of the mask in the Transparency panel to go back to the map. Once again, our glows now fade in and our as needed. But, so do our labels.


We need, once again, an untouched copy of our labels to go on top. As with Photoshop, you can duplicate the Labels layer by clicking and dragging it to the icon on the bottom of the Layers panel that looks like a page with an upturned corner. Rename/reorder so that there’s a Glows layer on the bottom and a Labels layer on the top.


Note that the glow gets stronger now that there are two of them, one stacked atop the other.

Now, both layers are presently masked. We want to get rid of both the glow and the mask on the top, Labels, layer, so that it’s just a layer of plain, unadorned labels. Target the appearance of the Labels layer (again, click that little circle) and open the Appearance panel. You’ll see that the layer has an Outer Glow on it.


If you click on the words Outer Glow, you can go and change your glow settings. That’s handy for later on if you need to make adjustments. But we’re not working with our Glows layer, we’re working with our Labels layer, so I really want to just get rid of this spare glow. Click to the right of the words Outer Glow to highlight the effect (don’t click on the words, just next to them). Then, click the trash can icon at the bottom of the Appearance panel. That glow will be removed.


Keep targeting the appearance of the Labels layer and go to the Transparency panel next. Here, we can see that we still have an opacity mask in place. Hit the Release button.


This unfortunately doesn’t just get rid of the mask. It actually takes all the contents of the mask and dumps them back on your map. So now I have two copies of my basemap: the original, and the one that used to be in the mask. We need to delete the latter. In the Layers panel, expand the tree to see what’s inside the Labels layer. Notice that the first thing there is a Group.


That’s got all the stuff that used to be in the opacity mask. Select and delete it. And now we’re back to just a simple Labels layer, with no fancy effects. It sits atop the Glows layer, and hides the fact that the Glows layer labels are fading in and out. With that, we’re all set: we have white labels that get a little dark glow behind them when they need it. The glow fades away when it’s less useful.


Again, this would have been easier if I’d just duplicated the Labels layer before applying a glow and opacity mask, but it’s useful to know how to alter/remove those things later. And now you know how to adjust your glow using the Appearance panel, if you decide it’s necessary.

So, that’s how to make glowing type halos in Photoshop and Illustrator that respond to the basemap underneath. It’s a subtle touch. It’s not something I do all the time, but it’s a handy tool to bring out when it can help. Enjoy!

This tutorial is, and will remain, free, but if you derive some value from it, you are welcome to make a donation to support my continued work.