Hi List,

I run Mapserver 5.0 beta5 as a WMS server and have some troubles with background transparency :(

In a first attempt, I just replaced my GD OUTPUTFORMAT definition by:

OUTPUTFORMAT
  NAME             "png"
  DRIVER           "AGG/PNG"
  MIMETYPE         "image/png"
  IMAGEMODE        "rgba"
  EXTENSION        "png"
  FORMATOPTION     "transparent=on"
  # TileCache can't use meta-tiling on interlaced PNG files...
  FORMATOPTION     "interlace=off"
END

Changed my config to have my OpenLayers pointing directly at Mapserver 5.0, launch my browser and... Wow, it looks great !!!

Then, I tried some optimization and I added to my OUTPUTFORMAT element (as seen in "AGG rendering specifics" howto) :
  FORMATOPTION     "quantize_force=on"
  FORMATOPTION     "quantize_dither=off"
  FORMATOPTION     "quantize_colors=256"

Well, the line work is still beautiful but I now have 2 problems :
1) I lost background transparency. My tiles appear with a white background, I tried to change IMAGECOLOR from 255 255 255 to -1 -1 -1, also to remove this element but it doesn't change anything. 2) Fonts and symbols looks very crappy, they are mixed black and white where they should be filled with black with a white outline.

On a random tile, the image size fall from 102KB down to 25KB. Such ratio is not representative at all since it's not an average and it's only about vector data but still, quantize option seems very interesting and I don't want to give up because of transparency problems.

Trying to solve the first problem, I found a workaround for the second. When I set the TRANSPARENT parameter of the WMS request to 'false' (or any value different of 'true'), then fonts and symbols are displayed normally. It could have been ok if TRANSPARENT was not an optional parameter... The map should looks good in the default case.

Does someone could give more explanation about the quantize option, especially regarding transparency management ?

If possible, a broader answer about the FORMATOPTION element would help a lot. Indeed, it seems like most optimizations are possible through output format tuning. Unfortunately, I have not been able to find any reference document on this...

Regards,

--
Gilles Bassiere
MAKINA CORPUS
30 rue des Jeuneurs
FR-75011 PARIS
http://www.makina-corpus.com

Reply via email to