[mapserver-commits] r8698 - trunk/docs/tutorial
svn at osgeo.org
svn at osgeo.org
Mon Mar 9 10:35:08 EDT 2009
Author: pnaciona
Date: 2009-03-09 10:35:08 -0400 (Mon, 09 Mar 2009)
New Revision: 8698
Added:
trunk/docs/tutorial/example1-4.txt
Log:
Add tutorial example 1.4
Added: trunk/docs/tutorial/example1-4.txt
===================================================================
--- trunk/docs/tutorial/example1-4.txt (rev 0)
+++ trunk/docs/tutorial/example1-4.txt 2009-03-09 14:35:08 UTC (rev 8698)
@@ -0,0 +1,106 @@
+.. _example1-4:
+
+===========
+Example 1.4
+===========
+Labeling the Map
+----------------
+
+We can also add labels to our map...
+
+.. image:: http://biometry.gis.umn.edu/cgi-bin/mapserv.exe?map=/ms4w/apps/tutorial/htdocs/example1-4.map&layer=states_poly&layer=states_line&mode=map
+
+MapServer has a very flexible labeling engine. It supports native bitmap as
+well as truetype fonts. Font scaling is supported with truetype. The labeling
+angles and placements can be customized... If you take the time to learn the
+many parameters involved in creating good labels, you will be rewarded with
+informative and aesthetically pleasing maps.
+
+This is what the map file looks like: `Example1-4.map <http://biometry.gis.umn.edu/tutorial/example1-4.map>`_.
+
+The map file structure, by objects, looks like this:
+
+::
+
+ MAP
+ (states_poly) LAYER----------|---------LAYER (states_line)
+ (land) CLASS-----|-CLASS (water) |-CLASS
+ STYLE-|-LABEL |-STYLE |-STYLE</pre>
+
+Here we introduce a few more parameters along with the LABEL object:
+
+**FONTSET**
+ Here we specify the full path to our truetype fonts list (or fontset)
+ file. This file lists each of the available fonts. See the file
+ itself and the `MapServer font set documentation
+ <http://mapserver.gis.umn.edu/doc/fontset.html>`_ for more info.
+ FONTSET is a parameter of the MAP object.
+
+**LABELITEM**
+ This specifies which data attribute to use for labeling, in this
+ case "STATE". LABELITEM is a parameter of the LAYER object.
+
+**LABEL**
+ Marks the beginning of the LABEL object. The label object can be used
+ under other objects (i.e. the SCALEBAR object).
+
+**COLOR**
+ Within the LABEL object, COLOR specifies the color of the label text.
+
+**SHADOWCOLOR**
+ This specifies the shadow color of the label text.
+
+**SHADOWSIZE**
+ Specifies the shadow size. The value corresponds to the X and the Y
+ shifts in pixels. So, "2 2" means two pixels wide by two pixels high.
+
+**TYPE**
+ Within the LABEL object, TYPE specifies what type of font to use. We
+ have the choice of TRUETYPE or BITMAP (the built-in fonts). We choose
+ TRUETYPE.
+
+**FONT**
+ If you specify TYPE as TRUETYPE, you need to specify what font to use.
+ The value here is the "alias" in the font list file.
+
+**SIZE**
+ If using truetype fonts, the value is size in pixels. If bitmap, you
+ can say something like "small" or "large".
+
+**ANTIALIAS**
+ This turns truetype antialiasing on or off. Remember the value isn't
+ on or off but TRUE or FALSE.
+
+**POSITION**
+ Where to position the label text in relation to the label points.
+ The value is a combination of vertical and horizontal positions. You
+ have the following choices for vertical alignment: C for center, U
+ for upper, and L for lower. For horizontal alignment you have the
+ following choices: C for center, L for left, and R for right. So, to
+ align the label text to the center of label ID you'd use the value
+ "CC" (center-center). Or if you'd like it to be on the
+ lower left of the ID, you'd use LL. Another way is to let MapServer
+ decide the best position for your labels. For this you would use
+ the value "AUTO".
+
+**PARTIALS**
+ Tells MapServer whether to generate incomplete label texts or not.
+ The default here is not to generate fragments of a label text. The
+ value is either TRUE or FALSE.
+
+**MINDISTANCE**
+ This is the minimum distance in pixels between duplicate labels. See
+ what happens if you increase or decrease this value.
+
+**BUFFER**
+ The padding (in pixels) for each label. This is used to enhance
+ readability. A BUFFER of 4 pixels mean that no label will be drawn
+ within four pixels of each other. Again, change to see how it works.
+
+ You can also create labels separate from a POLYGON layer. You do
+ this with the ANNOTATION data type. Have a look at the next example's
+ map file to see how you'd implement this kind of labeling. You will
+ notice that the CLASS object within the "label" layer has a COLOR
+ parameter value of "-1 -1 -1". The negative number tells MapServer to
+ give this CLASS a transparent color (the label IDs don't show up).
+ Once again, play with the values to understand how it affects the map.
More information about the mapserver-commits
mailing list