PDA

View Full Version : What software should I use to label my maps?



psyekl
06-16-2009, 02:57 PM
Greetings fellow cartographers! I draw all of my maps by hand in black and white and have recently been introduced to modifying them digitally both to add color and labels. I've come to the decision to purchase software to better aid my work, but I am not entirely sure which program I should use. I have been playing with GIMP 2 and a sample of Corel, but neither offer all of the features I need. While I do want a program that provides high-quality digital duplication of art mediums (oil, water and acrylic paints, charcoal, pencil, pen and ink, etc) the most important feature I require is the ability to add text freely in any direction and with different spacing. So far the two programs I've tried only allow the insertion of text horizontally, but I need to be able to make text curve, stretch, insert vertically, etc to fit properly; especially on terrain maps. I'm thinking that Photoshop may have what I need, but I don't want to spend the money on it until I know it's the right choice.

Steel General
06-16-2009, 03:11 PM
You may want to look at Illustrator (or it's free counterpart Inkscape). These are vector-based programs and many folks here use them to do the labeling on their maps.

Personally I do everything in Photoshop, but the cost is a bit prohibitive for most folks.

Oh, and Welcome Aboard!

NeonKnight
06-16-2009, 03:51 PM
Welcome!!!

Ascension
06-16-2009, 05:32 PM
Photoshop might be the thing that you want. Most of the free fonts that you can download are never kerned correctly and PS allows me to go back and manually adjust kerning and leading to my liking. Text on a curve, circle, path, vertical is also quite easy. There are some things that cannot be done with text and for that you need sign-making software (like a title that is flat across the top and curved across the bottom...there is a work-around but it's tedious). There used to be user forums (might still be there) over at Letterhead Fonts and they knew what software to use for that but I can't remember it right now. PS also gives you full access to digital editing but getting true painterly brushes takes some web searching as the defaults are just kind of average. The only thing really lacking, in my opinion, is the image hose or image tube (where the brush is made up of different pictures) and so for that Gimp or Paint Shop Pro is what to use...although I rarely do. Basically PS is a nice all-in-one but lacks a few things.

RobA
06-16-2009, 05:51 PM
Just for labeling, I'd go with Inkscape. It is free, and will let you do all that other jazz like text on paths and individual letter kerning. It is what I use for my labeling. Of course, it won't provide the natural media stuff you are looking for (neither does Photoshop, for that matter). This is available using a variety of different packages. One nice one that may not be around (or has changed names) is Deep Paint. Another one is called Painter (iir). Just google for natural media painting software and you should get some good options.

-Rob A>

Redrobes
06-16-2009, 08:14 PM
Ah we were just talking about that chez moi. Can inkscape be scripted so that we could pass in a list of names at coords and rotations etc and it will render all that up ? I have a script to do the names in perlmagick but at mo its only rendering them horizontally so since the topic has come up what scriptable options are there.

ravells
06-16-2009, 08:43 PM
I'm with RobA...use raster for drawing the map and vector for labelling it. It's so much easier having your labels on one layer and being able to edit them.

Midgardsormr
06-16-2009, 11:14 PM
Give Inkscape a look, since it's free. But if you're curious about Photoshop's or Illustrator's capabilities, Adobe does offer a free 30-day trial, so you don't have to lay out any money just to see if it's what you need.

For real art media simulation, Corel Painter is the best I'm aware of. I don't know how robust its text handling is, though.

RobA
06-16-2009, 11:43 PM
Ah we were just talking about that chez moi. Can inkscape be scripted so that we could pass in a list of names at coords and rotations etc and it will render all that up ? I have a script to do the names in perlmagick but at mo its only rendering them horizontally so since the topic has come up what scriptable options are there.

It is pretty much all scripts! Inkscape extensions are written in python (one of the reasons I'm trying to learn it...I hacked together one extension using a Lego brick approach, but hosestly has no idea about the language).

Inkscape files are just SVG so theoretically you could just create them yourself using an XML toolset and then render as a png from the command line using Inkscape. The simple transforms would be translation, rotation, skewing and scaling. Having the text along a path requires a bezier curve and the text. Here (for fun) is the code for such a thing, with the fill and stroke of the bezier curve set to none so it doesn't show up:


<path
id="path2816"
d="m 117.28118,236.87483 c 151.42857,-128.57143 291.42857,-42.85715 305.71429,-20"
style="color:#000000;fill:none;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inl ine;overflow:visible;enable-background:accumulate" />
<text
id="text2818"
style="font-style:normal;font-variant:normal;font-weight:900;font-stretch:normal;text-align:start;text-anchor:start;fill:#204a87;stroke:#ef2929;stroke-width:2;font-family:Arial Black;-inkscape-font-specification:Arial Black Heavy"
xml:space="preserve"><textPath
id="textPath2822"
xlink:href="#path2816"><tspan
id="tspan2820"
style="font-size:48px;text-align:start;text-anchor:start;fill:#204a87;stroke:#ef2929;stroke-width:2">Hello World</tspan></textPath></text>

and the image it renders:

14192

-Rob A>