是否可以使用mapfish print servlet打印多个图层

时间:2012-08-21 06:56:44

标签: pdf pdf-generation gis layer

我遇到了mapfish print-servlet和geowebcache服务器层的问题。 (更多信息:http://www.mapfish.org/doc/print/index.html

如果我尝试在“spec”-data中发送一个图层作为POST - 请求它可以正常工作。 如果我使用其他图层也可以正常工作。

我的问题是我想要在PDF的同一张图片中显示两个图层。

我用

试了一下
layers: [{
                    baseURL:"hier steht die url",
                    opacity:1,
                    singleTile:true,
                    customParams:{
                        TRANSPARENT:true
                    },
                    type:"WMS",
                    layers:
                    ["Strom"],
                    format:"image/png"
                },
                {baseURL:"hier steht die url",
                    opacity:1,
                    singleTile:true,
                    customParams:{
                        TRANSPARENT:true
                    },
                    type:"WMS",
                    layers:
                    ["Kataster"],
                    format:"image/png"
                }
                ]

和此

layers: [{
                    baseURL:""hier steht die url"",
                    opacity:1,
                    singleTile:true,
                    customParams:{
                        TRANSPARENT:true
                    },
                    type:"WMS",
                    layers:
                    ["Kataster", "Strom"],
                    format:"image/png"
                }

两者都不起作用。我只是在PDF中得到一条消息,找不到层Kaster,Strom。

所以它不是作为数组读取的(就像String一样)。

这是我的完整规格数据。

  var jsSpec = {
                layout: "A4 portrait",
                title: "Demo MGC PDF",
                srs : "EPSG:900913",
                units : "dd",
                outputFilename :  "PrintFile",
                outputFormat : "pdf",
                layersMerging:true,
                layers: [{
                    baseURL:"hier steht die url",
                    opacity:1,
                    singleTile:true,
                    customParams:{
                        TRANSPARENT:true
                    },
                    type:"WMS",
                    layers:
                    ["Strom"],
                    format:"image/png"
                },
                {baseURL:"hier steht die url",
                    opacity:1,
                    singleTile:true,
                    customParams:{
                        TRANSPARENT:true
                    },
                    type:"WMS",
                    layers:
                    ["Kataster"],
                    format:"image/png"
                }
                ],
                pages : [{
                    center: [959585.51046, 6390630.44659],
                    scale: 64000000,
                    dpi: 190,
                    mapTitle: printFormPanel.getForm().findField('titlefieldvalue').getValue(),
                    comment: printFormPanel.getForm().findField('commentfieldvalue').getValue(),
                    data: [{
                        id : 1, 
                        name: "blah", 
                        icon: "icon_pan"
                    },{
                        id : 2, 
                        name: "blip", 
                        icon: "icon_pan"
                    }]
                }]
            };

这是我的完整配置文件:

layouts:     
A4 portrait:
mainPage:
  rotation: true
  pageSize: A4
  header:
    height: 50
    items:
      - !text
        font: Helvetica
        fontSize: 30
        align: right
        text: '${mapTitle}'
  items:
    - !map
      spacingAfter: 30
      width: 440
      height: 483
    - !text
      text: '${comment}'
      spacingAfter: 30
  footer:
    height: 30
    items:
      - !columns
        items:
          - !text
            backgroundColor: #FFFF00
            align: left
            text: Copyright Firma
          - !text
            align: right
            text: 'Page ${pageNum}'

有人可以告诉我我做错了什么吗? servlet无法打印多个图层吗?

0 个答案:

没有答案