• arcengine 将地图文件保存为图片(包括各种图片格式)


    1,最近做了个地图文件输出图片的功能,思想主要就是利用MapControl的ActiveView中的out方法:

    2代码如下:欢迎交流指正

     1             SaveFileDialog m_save = new SaveFileDialog();
     2             m_save.Filter = "jpeg图片(*.jpg)|*.jpg|tiff图片(*.tif)|*.tif|bmp图片(*.bmp)|*.bmp|emf图片(*.emf)|*.emf|png图片(*.png)|*.png|gif图片(*.gif)|*.gif";
     3             m_save.ShowDialog();
     4             string Outpath = m_save.FileName;
     5             if (Outpath != "")
     6             {
     7                 //分辨率
     8                 double resulotion = MapControl.ActiveView.ScreenDisplay.DisplayTransformation.Resolution;
     9                 IExport m_export = null;
    10                 if (Outpath.EndsWith(".jpg"))
    11                 {
    12                     m_export = new ExportJPEG() as IExport;
    13 
    14                 }
    15                 else if (Outpath.EndsWith(".tig"))
    16                 {
    17                     m_export = new ExportTIFF() as IExport;
    18 
    19                 }
    20                 else if (Outpath.EndsWith(".bmp"))
    21                 {
    22                     m_export = new ExportBMP() as IExport;
    23 
    24                 }
    25                 else if (Outpath.EndsWith(".emf"))
    26                 {
    27                     m_export = new ExportEMF() as IExport;
    28                 }
    29                 else if (Outpath.EndsWith(".png"))
    30                 {
    31                     m_export = new ExportPNG() as IExport;
    32                 }
    33                 else if (Outpath.EndsWith(".gif"))
    34                 {
    35                     m_export = new ExportGIF() as IExport;
    36                 }
    37                 //设置输出的路径
    38                 m_export.ExportFileName = Outpath;
    39                 //设置输出的分辨率
    40                 m_export.Resolution = resulotion;
    41                 tagRECT piexPound;
    42                 piexPound = MapControl.ActiveView.ScreenDisplay.DisplayTransformation.get_DeviceFrame();
    43                 IEnvelope m_envelope = new Envelope() as IEnvelope;
    44                 m_envelope.PutCoords(piexPound.left, piexPound.bottom, piexPound.right, piexPound.top);
    45                 //设置输出的IEnvelope
    46                 m_export.PixelBounds = m_envelope;
    47 
    48                 ITrackCancel m_trackCancel = new CancelTracker();
    49                 //输出的方法
    50                 MapControl.ActiveView.Output(m_export.StartExporting(), (short)resulotion, ref piexPound, MapControl.ActiveView.Extent, m_trackCancel);
    51                 m_export.FinishExporting();
  • 相关阅读:
    洛谷1462 通往奥格瑞玛的道路 二分+spfa
    NumPy 排序、条件刷选函数
    NumPy 统计函数
    2019-3-10——生成对抗网络GAN---生成mnist手写数字图像
    python if __name__ == 'main' 的作用和原理()
    Python os.getcwd()
    numpy.random.uniform()
    tf.trainable_variables()
    tf.layers.dense()
    彻底弄懂tf.Variable、tf.get_variable、tf.variable_scope以及tf.name_scope异同
  • 原文地址:https://www.cnblogs.com/huchaoheng/p/3579996.html
Copyright © 2020-2023  润新知