地圖顯示範圍截圖是將當前地圖顯示的範圍進行輸出。輸出的 格式是png、bmp,主要思路就是經過IActiveView接口下的Output()方法進行輸出框架
第一步ide |
設置圖片導出路徑spa |
第二步code |
設置輸出的屬性ExportPNG(寬度、高度、導出路徑等)orm |
第三步視頻 |
地圖調用OutPut()方法進行輸出對象 |
接口/類blog |
方法/屬性教程 |
說明接口 |
PIE.Display.IDisplayTransformation |
DeviceFrame |
獲取或設置設備框架 |
PIE.Carto.ExportPNG |
Width |
獲取或設置導出的寬度 |
Height |
獲取或設置導出的高度 |
|
ExportFileName |
設置或獲取導出路徑 |
|
StartExporting |
開始導出 |
|
FinishExporting |
結束導出 |
項目路徑 |
百度雲盤地址下/PIE示例程序/02.地圖操做/04.地顯示範圍截圖 |
數據路徑 |
百度雲盤地址下/PIE示例數據/柵格數據/04.World/World.tif |
視頻路徑 |
百度雲盤地址下/PIE視頻教程/02.地圖操做/04.地圖顯示範圍截圖.avi |
示例代碼 |
|
1 /// <summary> 2 /// 地圖顯示範圍截圖 並將圖保存 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void tbn_OutputImg_Click(object sender, EventArgs e) 7 { 8 //一、設置輸出的路徑 9 SaveFileDialog saveFile = new SaveFileDialog(); 10 saveFile.Filter = "png圖(*.png)|*.png|bmp|*.bmp"; 11 saveFile.Title = "截圖保存路徑"; 12 if (saveFile.ShowDialog() != DialogResult.OK) return; 13 if (string.IsNullOrEmpty(saveFile.FileName)) 14 { 15 MessageBox.Show("文件名不能爲空!"); 16 return; 17 } 18 //二、實例化輸出png對象,並設置輸出屬性 19 PIE.Display.IDisplayTransformation dT = mapControlMain.ActiveView.DisplayTransformation; 20 PIE.Carto.ExportPNG export = new PIE.Carto.ExportPNG(); 21 export.Width = (int)dT.DeviceFrame.Width; 22 export.Height = (int)dT.DeviceFrame.Height; 23 export.ExportFileName = saveFile.FileName; 24 export.StartExporting(); 25 mapControlMain.ActiveView.Output(export as PIE.Carto.IExport, 96, dT.DeviceFrame, mapControlMain.ActiveView.Extent, null); 26 export.FinishExporting(); 27 } |