[mapserver-dev] Better resolution handling for printing

Tamas Szekeres szekerest at gmail.com
Wed Feb 11 17:19:10 EST 2009


Daniel,

I would introduce a new parameter of the map called 'magnification' which
would be multiplied with the resolution when calculation the scale. In
addition the scalefactor should also multiplied with this in msPrepareImage
to achieve the desired effect.
I guess it wouldn't be annoying for the user that by setting  magnification
= 2.0 would increase the width of the map elements 2 times.
magnification = 1.0 would be the default value.


Best regards,

Tamas





2009/2/11 Daniel Morissette <dmorissette at mapgears.com>

> Dev's,
>
> When using MapServer to generate a printable map at higher resolution than
> the default screen resolution, say 300dpi instead of 72dpi, it is not
> sufficient to update the map->resolution setting since all the label and
> symbol sizes as well as line widths also need updating if you want to
> maintain the same map appearance.
>
> This issue has been discussed a few times before and I even think some have
> worked on this at their end. We have a client who needs a fix for this so
> I'd like to open a discussion on this before we go ahead and prepare a RFC.
>
> The approach I was thinking of using is to add a new map->defresolution
> (better names welcome) that would be the default resolution of a given
> mapfile, that is the reference resolution for which all sizes in labels,
> classes and styles are set.
>
> In normal web browsing operation, map->defresolution should be set to the
> same value as map->resolution (e.g. 72dpi). When you want to print a 300dpi
> map, then you'd set map->resolution=300, and MapServer would automagically
> apply a factor of map->resolution/map->defresolution to all size values in
> the mapfile before rendering. For instance, if your mapfile is set for a
> defresolution of 72dpi and you request a output resolution of 300dpi, all
> size values would be multiplied by 300/72=4.16 and labels, lines and symbols
> on the resulting map would have the same/expected relative sizes.
>
> I think I've read suggestions of setting resolution as an outputformat
> option before, but this may not work well with remote (e.g. WMS) services,
> we need something better integrated and with the proposed approach just
> passing a new vendor-specific resolution param in the WMS GetMap URL could
> do the trick.
>
> Does my explanation make sense? Has anyone worked on this problem already?
> Any thoughts on this before we start working on a RFC?
>
> Daniel
> --
> Daniel Morissette
> http://www.mapgears.com/
> _______________________________________________
> mapserver-dev mailing list
> mapserver-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/mapserver-dev/attachments/20090211/87409934/attachment-0001.html


More information about the mapserver-dev mailing list