Hi Rémi,

Use Fiddler or FireBug to capture the JSON that is being sent to your server. This includes a legends property such as:

"legends":[{"name":"My Layer","classes":[{"name":"","icons":["http://url.to.icon.....

Take the URL to the icon and see if you can access it correctly on the print server. I had an of issue where the URL passed to the print program pointed to the server's external URL which was not accessible from the server itself.

Regards,

Seth G.

On 15/12/2010 12:05, Rémi Lagoin wrote:
[Sorry, it's Better in English]

No progress today ... any help is welcome:)

2010/12/15 Rémi Lagoin <[email protected] <mailto:[email protected]>>

    Pas de progression aujourd'hui ... toute aide est bienvenue :)

    2010/12/14 Rémi Lagoin <[email protected]
    <mailto:[email protected]>>

        Thanks Andreas,

        I also tried this example, the legendPanel works well,
        printing the PDF is done, but I only have the layer name in
        the caption, not the legend image associated.

        Here is my code :

        --------------
        var mapPanel, printPage;

        Ext.onReady(function() {
            // The printProvider that connects us to the print service
            var printProvider = new GeoExt.data.PrintProvider({
                method: "GET", // "POST" recommended for production use
                capabilities: printCapabilities // from the info.json
        script in the html
            });
            // Our print page. Tells the PrintProvider about the scale
        and center of
            // our page.
            printPage = new GeoExt.data.PrintPage({
                printProvider: printProvider,
                customParams: {
                    mapTitle: "Printing Demo",
                    comment: "This is a simple map printed from GeoExt.",
                    copyright: "This is a simple map printed from GeoExt."
                }
            });

            feux = new OpenLayers.Layer.WMS("feux", "http://xxxx/feux";,
                    {layers: "feux", format: 'image/jpeg',
        transparent: true}, {singleTile: true});

           // The map we want to print
            mapPanel = new GeoExt.MapPanel({
                region: "center",
                layers: [feux],
                center: [146.56, -41.56],
                zoom: 6
            });

            // The legend to optionally include on the printout
            var legendPanel = new GeoExt.LegendPanel({
                region: "west",
                width: 150,
                bodyStyle: "padding:5px",
                layerStore: mapPanel.layers,
                defaults: {
                style: 'padding:5px',
                baseParams: {
                    FORMAT: 'image/png',
                    LEGEND_OPTIONS: 'forceLabels:on'
                }
            }

            });

            mapPanel.map.addControl(new
        OpenLayers.Control.LayerSwitcher());

            var includeLegend; // controlled by the "Include legend?"
        checkbox

            // The main panel
            new Ext.Panel({
                renderTo: "content",
                layout: "border",
                width: 700,
                height: 420,
                items: [mapPanel, legendPanel],
                bbar: ["->", {
                    text: "Print",
                    handler: function() {
                        // convenient way to fit the print page to the
        visible map area
                        printPage.fit(mapPanel, true);
                        // print the page, optionally including the legend
                        printProvider.print(mapPanel, printPage,
        includeLegend && {legend: legendPanel});
                    }
                }, {
                    xtype: "checkbox",
                    boxLabel: "Include legend?",
                    handler: function() {includeLegend = this.checked}
                }]
            });
        });
        -----------
        And an extract of my Yaml config :

               - !columns
                   widths: [100]
                   absoluteX: 300
                   spacingAfter: 5
                   items:

                    - !legends
                       maxIconWidth: 0
                       maxIconHeight: 0
                       classIndentation: 0
                       layerSpace: 5
                       layerFontSize: 10


        Is something wrong ?

        Thanks a lot,

        Rémi



        2010/12/13 Andreas Hocevar <[email protected]
        <mailto:[email protected]>>

            Hi,

            have you tried to do something like in this example in
            your code:
            http://api.geoext.org/1.0/examples/print-page.html

            The essential part is to call the PrintProvider's print
            method with an additional option, e.g.

            printProvider.print(mapPanel, printPage, {legend:
            legendPanel});

            Also note that it is required to configure the server's
            config.yaml accordingly, as described here:
            http://api.geoext.org/1.0/docs/lib/GeoExt/data/PrintProvider.html

            - !legends
               maxIconWidth: 0
               maxIconHeight: 0
               classIndentation: 0
               layerSpace: 5
               layerFontSize: 10

            Regards,
            Andreas.

            On Dec 13, 2010, at 18:10 , Rémi Lagoin wrote:

            > Hi all,
            >
            > I try to use the form print PDF GeoExt based servlet
            mapfish geoext as in the example (1).
            > The PDF generation is going well but I can not get the
            icons of the layers in the legend, I get only the name of
            the active layers.
            >
            > I use a TreePanel (with captions for each layer), a
            legendPanel (because I assume that its presence is
            essential to display the caption in the PDF?), And a
            MapPanel (required I guess).
            >
            > I also tried the Geoext.ux.SimplePrint, but no more
            success ... it gives me no icons layers ...
            >
            > The inclusion of the legend went very well with the
            widget mapfish (LayerTree) I feel that this is not so
            simple with a TreePanel and legendPanel ...
            >
            > Do you have any advice for me because I do not know what
            to do to move forward ...
            >
            > Thanks a lot!
            > Remi
            >
            > 1 - http://api.geoext.org/1.0/examples/print-form.html
            _______________________________________________
            > Users mailing list
            > [email protected] <mailto:[email protected]>
            > http://www.geoext.org/cgi-bin/mailman/listinfo/users



            --
            Andreas Hocevar
            OpenGeo - http://opengeo.org/
            Expert service straight from the developers.





_______________________________________________
Users mailing list
[email protected]
http://www.geoext.org/cgi-bin/mailman/listinfo/users

_______________________________________________
Users mailing list
[email protected]
http://www.geoext.org/cgi-bin/mailman/listinfo/users

Reply via email to