I'm developing map with Mapserver to be rendered in tiles and testing output with Ka-map. Most of the time labels split on two tiles are matching, but sometimes they're not.
I configured Ka-Map like
$tileWidth = 256;
$tileHeight =256;
$metaWidth = 4;
$metaHeight = 4;
/* $metaBuffer = Buffer size in pixels to add around metatiles to avoid
* rendering issues along the edge of the map image
*/
$metaBuffer = 256;
but even large buffer of 256 pixels doesn't protect label from occasional splitting.
What good practices do exist to make sure labels are placed deterministically?
Best Answer
You can try the PARTIALS options for MapServer labels. This makes sure that labels are only drawn if they can fit completely on the generated image. It's set to TRUE by default, so try FALSE.
For example:
There are several other placement options available to experiment with such as REPEATDISTANCE, MAXOVERLAPANGLE, MAXLENGTH and:
The auto option for placement is only available for cached labels. To enable this option you the LABELCACHE option must be set to ON for the LAYER object - it is ON by default so you shouldn't have to add this unless yo uwant to be more explicit.