将地图导出为图片

将地图导出为图片
将地图导出为图片,测试通过。

       将地图导出为图片,测试通过

public static void export(AxMapControl MapCtrl,Form hwin)

        {

            try

            {

                SaveFileDialog sfd = new SaveFileDialog();

                sfd.Filter = "(*.tif)|*tif|(*jpeg)|*jpeg|(*.pdf)|*.pdf|(*.bmp)|*.bmp";

                if (sfd.ShowDialog(hwin) == DialogResult.OK)

                {

                    IExport pExport = null;

                    if (1 == sfd.FilterIndex)

                    { pExport = new ExportTIFFClass();

                    pExport.ExportFileName = sfd.FileName+".tif";

                    }

                    else if (2 == sfd.FilterIndex)

                    { pExport = new ExportJPEGClass(); pExport.ExportFileName = sfd.FileName+".jpeg"; }

                    else if (3 == sfd.FilterIndex)

                    { pExport = new ExportPDFClass(); pExport.ExportFileName = sfd.FileName+".pdf"; }

                    else if (4 == sfd.FilterIndex)

                    { pExport = new ExportBMPClass(); pExport.ExportFileName = sfd.FileName+".bmp"; }

                    //pExport.ExportFileName = sfd.FileName;

                    int res = 96;

                    pExport.Resolution = res;

                    tagRECT exportRECT = MapCtrl.ActiveView.ExportFrame;

                    IEnvelope pENV = new EnvelopeClass();

                    pENV.PutCoords(exportRECT.left, exportRECT.top, exportRECT.right, exportRECT.bottom);

                    pExport.PixelBounds = pENV;

                    int Hdc = pExport.StartExporting();

                    IEnvelope pVisibleBounds = null;

                    ITrackCancel pTrack = null;

                    MapCtrl.ActiveView.Output(Hdc, (int)pExport.Resolution, ref exportRECT, pVisibleBounds, pTrack);

                    Application.DoEvents();

                    pExport.FinishExporting();

                    pExport.Cleanup();

                }

            }

            catch { }

        }