1.1. 功能简介

地图显示范围截图是将当前地图显示的范围进行输出。输出的 格式是png、bmp,主要思路就是通过IActiveView接口下的Output()方法进行输出

1.2. 功能实现说明

2.1. 实现思路及原理说明

第一步

设置图片导出路径

第二步

设置输出的属性ExportPNG(宽度、高度、导出路径等)

第三步

地图调用OutPut()方法进行输出

2.2. 核心接口与方法

接口/类

方法/属性

说明

PIE.Display.IDisplayTransformation

DeviceFrame

获取或设置设备框架

PIE.Carto.ExportPNG

Width

获取或设置导出的宽度

Height

获取或设置导出的高度

ExportFileName

设置或获取导出路径

StartExporting

开始导出

FinishExporting

结束导出

2.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/02.地图操作/04.地显示范围截图

数据路径

百度云盘地址下/PIE示例数据/栅格数据/04.World/World.tif

视频路径

百度云盘地址下/PIE视频教程/02.地图操作/04.地图显示范围截图.avi

示例代码

          /// <summary>
/// 地图显示范围截图 并将图保存
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tbn_OutputImg_Click(object sender, EventArgs e)
{
//1、设置输出的路径
SaveFileDialog saveFile = new SaveFileDialog();
saveFile.Filter = "png图(*.png)|*.png|bmp|*.bmp";
saveFile.Title = "截图保存路径";
if (saveFile.ShowDialog() != DialogResult.OK) return;
if (string.IsNullOrEmpty(saveFile.FileName))
{
MessageBox.Show("文件名不能为空!");
return;
}
//2、实例化输出png对象,并设置输出属性
PIE.Display.IDisplayTransformation dT = mapControlMain.ActiveView.DisplayTransformation;
PIE.Carto.ExportPNG export = new PIE.Carto.ExportPNG();
export.Width = (int)dT.DeviceFrame.Width;
export.Height = (int)dT.DeviceFrame.Height;
export.ExportFileName = saveFile.FileName;
export.StartExporting();
mapControlMain.ActiveView.Output(export as PIE.Carto.IExport, , dT.DeviceFrame, mapControlMain.ActiveView.Extent, null);
export.FinishExporting();
}

2.4. 示例截图

PIE SDK地图显示范围截图的更多相关文章

  1. PIE SDK地图范围设置

    1.功能简介 地图范围设置主要就是对图层的地图浏览控制,例如地图的放大.缩小.漫游.全图显示.1:1视图.比例尺等功能,能更好的与地图有一个互动的地图浏览体验.PIE SDK对地图范围设置主要利用IC ...

  2. PIE SDK地图图层渲染方案管理

    1. 功能简介 在数据种类较多.渲染规则复杂的情况下,逐个设置其渲染方式是一件繁琐的工作.PIE SDK提供了一种省力省心的办法, PIE SDK提供栅格和矢量数据渲染方案的打开与保存.能够将配色方案 ...

  3. PIE SDK地图鹰眼图

    鹰眼图,是GIS的一个基本功能,在鹰眼图上可以像从空中俯视一样查看地图框中所显示的地图在整个图中的位置,是对全局地图的一种概述表达,能够起到很好的空间提示和导航的作用.网上有很多Arcengine 二 ...

  4. PIE SDK地图平移校正

    地图平移校正,当加载两幅空间参考一样的影像,其中一幅影像有点偏移,这时就以另一幅影像为基准将其进行平移校正,然后保存,再次加载就不会出现偏移了. 下面来介绍下实现的主要代码: 首先通过选中目录树中的要 ...

  5. PIE SDK地图图层控制

    1. 功能简介 地图图层控制就是图层的相关操作,如地图图层数据的添加.删除.移动和拖拽等功能. 2. 功能实现说明 2.1. 实现思路及原理说明 第一步 图层添加是调用AddLayer方法将图层添加到 ...

  6. PIE SDK地图范围设置和图层事件监听

    1. 功能简介 地图范围设置的监听就是通过IMapControlEvents接口对地图的视图范围更新或者地图的分辨率发生变化进行监听,然后做出相应的操作. 图层事件的监听就是通过IActiveView ...

  7. PIE SDK地图鼠标事件监听

    1.功能简介 地图鼠标事件包含鼠标的按下MouseDown(),弹起MouseUp(),移动MouseMove()等事件,通过这些事件可以对地图进行动态的操作,接下来以地图状态栏的信息为例具体介绍如何 ...

  8. PIE SDK地图放大镜

    放大镜,在地图的浏览过程中在主地图和次地图中起到很好的辅助作用, 要实现放大镜功能主要就是通过两个mapControl控件,主地图控件是mapControlMain,放大镜控件是UserControl ...

  9. PIE SDK地图书签

    地图书签,可以理解为暂时记录当前地图的范围和放大级别,在后续的操作中如果想回到地图之前的状态,就可以点击保存的书签就可以回到此状态,如图所示: 地图刚加载的时候是一幅世界地图 我们将地图的中心拖到南美 ...

随机推荐

  1. mysql for visual

    http://dev.mysql.com/downloads/file.php?id=458484

  2. C# JSON使用的常用技巧(二)

    JSON在php里一句json_encode就可以得到 在C#里我们同样也很容易的可以得到 用到的类库:Newtonsoft.Json.dll 实体类: class Cat { public stri ...

  3. Vim编码知识,乱码问题

    原文:http://demi-panda.com/2012/12/26/vim-encoding/ 在vim的初始学习阶段,乱码经常是困扰新手的一个比较烦躁的问题,本文试图阐述Vim的编码知识,及设置 ...

  4. 人脸识别 人工智能(AI)

    .. 如何通过AI实现 用我自己的数据集:能识别几张人脸.能否判断相似度.能否认出.

  5. LibreOJ 6281 数列分块入门 5(分块区间开方区间求和)

    题解:区间开方emmm,这马上让我想起了当时写线段树的时候,很显然,对于一个在2^31次方以内的数,开方7-8次就差不多变成一了,所以我们对于每次开方,如果块中的所有数都为一了,那么开方也没有必要了. ...

  6. asp.net 设置分页

    private const int PAGESIZE = 5; //定义每页有五行数据 private void FillPageList() { int pageCount = 0; // page ...

  7. angular学习文章

    https://www.jianshu.com/p/86c6249a2069 angular.cn https://segmentfault.com/a/1190000008754631

  8. C#导出Excel-利用特性自定义数据

    网上C#导出Excel的方法有很多.但用来用去感觉不够自动化.于是花了点时间,利用特性做了个比较通用的导出方法.只需要根据实体类,自动导出想要的数据  1.在NuGet上安装Aspose.Cells或 ...

  9. dubbo 安装部署Windows

    1 安装zookeeper 2 安装dubbo    1 下载源码 https://github.com/alibaba/dubbo 2 编译 mvn clean package install -D ...

  10. kali linux之edb--CrossFire缓冲区溢出

    漏洞的罪恶根源------变量,数据与代码边界不清,开发人员对用户输入没做过滤,或者过滤不严 如这个脚本,写什么,显示什么,但是加上:,|,&&,后面加上系统命令,就执行命令了 缓冲区 ...