Context Navigation

Print specifications

User requirements

for each page the user can set those params: scale (implies what layer we use), resolution (printer), paper size, orientation, rotation, position, comments, title

open questions:

Do we support full customization of the UI like in CW3? Or do we offer just two kind of UIs (single-page and multi-page) with the possiblity to disable some features (rotation, zoom factor, ...)? The customer seems to want server side templates to generate the whole web site automagically or something like that... need a more global investigation for that

status: For the multi-page version, we can start for what have been used in the "PVI swisstopo demo".

choix de la résolution pour le raster 96, 150, 300

details: The list of available resolution is configurable

Visibilité de la zone d'empreinte

status: For the multi-page version, we can start for what have been used in the "PVI swisstopo demo".

Déplacement/rotation de la zone d'empreinte

details:

also include snapping between pages when moving them.

it's OK to have one tool "enabled" at a time in order to avoid having more than one layer wanting events. So we need a way to know what tool "has the focus"

possibility to have textbox for setting the rotation in addition to the "graphic" edition.

status: We can use EditFeature from OL with some "customisation" like it was done for Mediapost.

création de document multi-page (cf. module de PVI)

details:

Page numbering can be activated: Page 1/n

status: The PVI module is now in it's own file as an Ext component. So it would be easy to start from there.

activation de l'affichage des attributs (multi-page)

details:

the list of printed attributes can be determined from what the user has selected (the order as well) in the "query result" tool.

Data sources

type 1

All the sources of geographic information rendered as bitmap. That means:

WMS

MapServer

TileCache (will be translated by a direct WMS request)

KaMap

MapGuide

WorldWind

Those can come from the local disk or from an HTTP get.

type 2

All the vectorized geographic data sources:

WFS

!GeoRSS

GML

KML

Those can come from the local disk or from an HTTP get.

status:

we may resort to the ability of MapServer or GeoServer to output PDF or SVG. But that introduces a limitation on what server is supported and what kind of data source is supported.

If the vector mode is enabled, this type is rendered as vectors in the PDF output. Otherwise, we ask the map server to convert them as raster.

type 3

All the vectorized data coming from the web browser along with the definition of what has to be printed. This kind of data contains both the shapes' definition (polylines, points and polygons) and their style (color, line style, filling colors, ...)

This type is rendered as vectors in the PDF output and only if the vector mode is enabled.

Architecture Studies

The most critical part of the print module (server side) is the PDF generation. So greate care as to be taken while selecting the lib we are going to use.

The things the PDF lib will have to be tested for are:

try to render a simple page with title, map, some vectors and text rendered of the map and a footer.

check how the transparent bitmaps are handled (may need to use another lib to merge the bitmaps first)

check that grids can be easily rendered

check if PDFs or SVGs can be inserted in other PDFs and that its possible to control their alignement accuratly.