[Mapserver-users] polygon label placement

Dean Gadoury dgadoury at dmsolutions.ca
Mon Mar 29 15:54:14 EST 2004


This is a multi-part message in MIME format.
--------------000008090409020702090109
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Hi,
Every now and then I need to label polygons in MapServer and I'm often 
unsatisfied with the resulting placement. Labeling is fine for points 
and lines, but when it comes to polygons it can be unpredictable. I've 
attached an image produced by MapServer in which the label for Florida 
is in an odd location. Does anyone have any insight into how MapServer 
decides where to place labels in polygons?

If I'm not mistaken the POSITION parameter will only place the label 
relative to the point at which MapServer decides the label will go. 
Depending on the label's POSITION its quite possible to have labels that 
fall completely outside a polygon. Is there a way to force labels to be 
within a polygon? Is there anything else I'm missing?

In the attached image the label position is CC and the label is way up 
on the FL/AL border.

Dean

-- 
___________________________

Dean Gadoury

DM Solutions Group
30 Rosemount Ave. Suite 200
Ottawa, Ontario. K1Y 1P4
613.565.5056 ext. 24

dgadoury at dmsolutions.ca
www.dmsolutions.ca


--------------000008090409020702090109
Content-Type: image/png;
 name="label.png"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="label.png"

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
mEICfpcAAAAASUVORK5CYII=
--------------000008090409020702090109--




More information about the mapserver-users mailing list