ArcGIS二次开发基础教程(03):保存文档和导出地图

ArcGIS二次开发基础教程(03):保存文档和导出地图ArcGIS二次开发基础教程(03):保存文档和导出地图保存文档保存://这里的path为全局变量在打开文件获添加数据时赋值原路径//判断打开文件是否为mxd文件是则保存不是则另存为if(System.IO.File.Exists(path.Remove(path.IndexOf(‘.’))+”.mxd”)){//对于已打开的mxd文档保存在原路径//…

大家好,又见面了,我是你们的朋友全栈君。

ArcGIS二次开发基础教程(03):保存文档和导出地图

保存文档

  1. 保存:
//这里的path为全局变量 在打开文件获添加数据时赋值原路径
//判断打开文件是否为mxd文件 是则保存 不是则另存为
if(System.IO.File.Exists(path.Remove(path.IndexOf('.')) + ".mxd"))
{
    //对于已打开的mxd文档保存在原路径
    //获取mapcontrol中的地图数据
	IMXDContexts context = axMapControl.Map as IMXDContexts;
	IMapDocument mapDocumnet = new MapDocumnetClass();
	mapDocument.Open(path);
	mapDocument.ReplaceContexts(context);
	mapDocument.Save();
}
else
{
    SaveAs();
}
  1. 另存为
void SaveAs()
{
    //没有mxd文档的新建一个
	saveFileDialog.Title = "保存文件";
	saveFileDialog.Filter = "ArcMap Document(*.mxd)|*.mxd";
	if(saveFileDialog.ShowDialog()==DialogResult.OK)
	{
		IMXDContexts context = axMapControl.Map as IMXDContexts;
		IMapDocument mapDocumnet = new MapDocumnetClass();
		mapDocument.New(path);
		mapDocument.ReplaceContexts(context);
		mapDocument.Save();
	}
}

导出地图

//将mapcontrol的显示范围导出为图片
saveFileDialog.Title = "导出图片";
//还有其他图片格式同理
saveFileDialog.Filter = "JPEG(*.jpg)|*.jpg|PNG(*.png)|*.png|PDF(*.pdf)|*.pdf|BMP(*.bmp)|*.bmp|TIFF(*.tif)|*.tif";
if(saveFileDialog.ShowDialog()==DialogResult.OK)
{
    IExport export = new ExportAllClass();
    string path = saveFileDialog.FileName;
    string extension = System.IO.Path.GetExtenion(path).Replace(".","").ToLower();
    switch(extension)
    {
        case "jpg":
            export = new ExportJPEGClass();
            break;
        case "png":
            export = new ExportPNGClass();
            break;
        case "pdf":
            export = new ExportPDFClass();
            break;
        case "bmp":
            export = new ExportBMPClass();
            break;
        case "tif":
            export = new ExportTIFFClass();
            break;
        default:
            MessageBox.Show("Error");
            return;
    }
    if(ExportImage(export,axMapConrol1.ActiveView,fileName))
    {
        MessageBox.Show("Succeed");
    }
    else
    {
        MessageBox.Show("Error");
    }
}
//这里是参考的帮助文档
bool ExportImage(IExport export,IActiveView activeView,string fileName)
{
  export.ExportFileName = fileName;

  // Microsoft Windows default DPI resolution
  export.Resolution = 96;
  // mapcontrol的显示范围
  tagRECT exportRECT = activeView.ExportFrame;
  IEnvelope envelope = new EnvelopeClass();
  envelope.PutCoords(exportRECT.left, exportRECT.top, exportRECT.right, exportRECT.bottom);
  export.PixelBounds = envelope;
  Int32 hDC = export.StartExporting();
  activeView.Output(hDC, (Int16)export.Resolution, ref exportRECT, null, null);

  // Finish writing the export file and cleanup any intermediate files
  export.FinishExporting();
  export.Cleanup();

  return true;
}

历届GIS应用技能大赛开发题答案点这里,尚在不定期更新中

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/163431.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • pip安装本地指定版本的whl文件

    pip安装本地指定版本的whl文件用pip装一些包的时候,由于pip默认的源也就那几个,换了清华的没用,豆瓣的也没用。。。老停在下载途中就不走了。。,所以就想到了能不能先把这些包down下来,然后本地进行安装呢?说干就干,这里以Tensorflow为例:1.下载.whl文件百度输入:TensorFlowpypi查看到最近能用的最新.whl版本为1.5.0rc1:点开该链接:选择好适合自己系统的版本,然后下载!重点来了:一般来说直…

  • 使用pycharm安装第三方库_pycharm找不到第三方库

    使用pycharm安装第三方库_pycharm找不到第三方库Pycharm是我比较喜欢的一款编辑器。  学习python有半年左右,安装第三方库都是通过 pip install 或者 easy_install。每次都要打开命令行感觉太麻烦。还好Pycharm提供了安装第三方库和安装插件的功能。   首先打开Pycharm,点击左上角 >>File >>Setting。    打开之后点击>>Project:

  • Rider2021 激活码(注册激活)[通俗易懂]

    (Rider2021 激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html…

  • Java中的WeakHashMap

    Java中的WeakHashMap楔子WeakHashMap,此种Map的特点是,当除了自身有对key的引用外,此key没有其他引用那么此map会自动丢弃此值,所以比较适合做缓存。WeakHashMap的这种特性比较适合实现类似本地、堆内缓存的存储机制——缓存的失效依赖于GC收集器的行为WeakHashMap的定义如下:publicclassWeakHashMap<K,V>extendsAbstract…

  • CIFAR10/CIFAR100数据集介绍

    CIFAR10/CIFAR100数据集介绍CIFAR-10/CIFAR-100数据集解析觉得有用的话,欢迎一起讨论相互学习~FollowMe参考文献CIFAR-10/CIFAR-100数据集CIFAR-10和CIFAR-100被标记为8000万个微小图像数据集的子集。他们由AlexKrizhevsky,VinodNair和GeoffreyHinton收集。CIFAR-10数据集CIF…

  • W3C标准与规范「建议收藏」

    W3C标准与规范「建议收藏」W3C标准,即一系列标准的集合,他的本质是结构标准语言。就像平时使用的HTML、CSS等都需要遵守这些标准。万维网联盟创建于1994年,是web技术领域最具权威和影响力的国际中立性技术标准机构。它有效促进了web技术相互之间的兼容。就像网页是由三部分组成:结构、表现和行为。那么他对应的标准也分三方面:1.结构化标准语言:HTML。可扩展标记语言(XML):最初设计目的是弥补HTML的不

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号