arcgis for javascript 地图打印4.19

在vue中使用arcgis for javascript 的地图打印使用 PrintTemplate设置打印模板

               loadModules([
                    "esri/tasks/PrintTask",
                    "esri/tasks/support/PrintTemplate",
                    "esri/tasks/support/PrintParameters",
                ], {
            
                  url:'',
                  css:''

                }).then(([PrintTask, PrintTemplate, PrintParameters]) => {
                     let webmap = new WebMap({
                         portalItem: {
                         id: "d6d830a7184f4971b8a2f42cd774d9a7"
                       }
                     });
                     let view = new MapView({
                         container: "viewDiv",
                         map: webmap
                      });
                    let printTask = new PrintTask({
                        url: "https://utility.arcgisonline.com/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task"
                    });
                    let template = new PrintTemplate({
                        exportOptions: {
                            dpi: 96,
                        },
                        attributionVisible:false,
                        format: "jpg",
                        layout: "a3-landscape",
                        preserveScale: false,
                        scalePreserved: true,//打印地图保留地图比例还是地图范围比例
                        layoutOptions:{

                        },
                    });
                    let params = new PrintParameters({
                        view:view,
                        template: template
                    });
                    printTask.execute(params).then(result, errorResult);
                    function result(evt) {
                         console.log(evt.url)//打印图片地址
                    }
                    function errorResult(err) {
                       console.log(err)
                    }
                })

PrintTemplate

用户生成打印页面的布局模板选项

名称类型说明
attributionVisibleBoolean如果为false,则属性不会显示在打印输出上
exportOptionsObject定义贴图宽度、高度和dpi
forceFeatureAttributesBoolean如果为true,则要素的属性将包含在要素集合层中,即使渲染不需要这些属性
formatString

打印地图的输出格式

pdf、png32、png8、jpg、gif、eps、svg、svgz

layoutString

当值为map-only或为空时,输出地图不包含任何页面布局环境(例如,标题、图例、比例尺等)。打印服务提供在可能值中列出的开箱即用模板。服务器管理员可以向打印服务添加其他模板

layoutOptionsObject布局
outScaleNumber打印地图的可选地图比例
scalePreservedBoolean定义打印的地图应保留地图比例还是地图范围
showLabelsBoolean如果为true,则标签将显示在布局上

 

layoutOptions 定义布局元素

名称类型说明
titleTextString标题文本元素,则用于地图标题的文本
authorTextString作者文本元素,则为作者使用的文本
copyrightTextString版权文本元素,则用于版权的文本
scalebarUnitString

比例尺单位:默认:Miles;

Miles(英里)、Kilometers(公里)、Kilometers(米)、Feet(英尺)

legendLayers []如果打印不需要图例 legendLayers =[]
customTextElements []页面布局上自定义文本元素的文本,值必须是字符串,自定义文本元素必须存在于打印服务中

 如果打印图例出现乱码问题或者地图标注中文问题,设置字体为宋体或者其他字体

参考一下链接解决中文乱码问题:

https://www.pianshen.com/article/25991065688/

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值