将地图导出为图片,测试通过
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 { }
}