public void Export( ExportFormat exportFormat )
Public Overloads Sub Export( _ ByVal exportFormat As ExportFormat _ )
Parameters
- exportFormat
- ExportFormat
public void Export( ExportFormat exportFormat )
Public Overloads Sub Export( _ ByVal exportFormat As ExportFormat _ )
Exception | Description |
---|---|
ArcGIS.Core.CalledOnWrongThreadException | This method must be called within the lambda passed to QueuedTask.Run. |
This overload is intended to export a single page layout to a supported output file format. Even if a map series is present, if this overload is chosen, the current layout page will be exported to file.
Each ExportFormat has its own set of configurable set of parameters such as OutputFileName and Resolution. You must first create the export format and then provide that as the only required input parameter.
//Export a layout to PDF //Create a PDF export format PDFFormat pdf = new PDFFormat() { OutputFileName = filePath, Resolution = 300, DoCompressVectorGraphics = true, DoEmbedFonts = true, HasGeoRefInfo = true, ImageCompression = ImageCompression.Adaptive, ImageQuality = ImageQuality.Best, LayersAndAttributes = LayersAndAttributes.LayersAndAttributes }; //Check to see if the path is valid and export if (pdf.ValidateOutputFilePath()) { layout.Export(pdf); //Export the PDF }
//This example demonstrates how to export a layout to BMP. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToBMPExample { public static Task ExportLayoutToBMPAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create BMP format with appropriate settings BMPFormat BMP = new BMPFormat(); BMP.Resolution = 300; BMP.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (BMP.ValidateOutputFilePath()) { lyt.Export(BMP); } }); } }
//This example demonstrates how to export a layout to EMF. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToEMFExample { public static Task ExportLayoutToEMFAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create EMF format with appropriate settings EMFFormat EMF = new EMFFormat(); EMF.Resolution = 300; EMF.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (EMF.ValidateOutputFilePath()) { lyt.Export(EMF); } }); } }
//This example demonstrates how to export a layout to EPS. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToEPSExample { public static Task ExportLayoutToEPSAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create EPS format with appropriate settings EPSFormat EPS = new EPSFormat(); EPS.Resolution = 300; EPS.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (EPS.ValidateOutputFilePath()) { lyt.Export(EPS); } }); } }
//This example demonstrates how to export a layout to GIF. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToGIFExample { public static Task ExportLayoutToGIFAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create GIF format with appropriate settings GIFFormat GIF = new GIFFormat(); GIF.Resolution = 300; GIF.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (GIF.ValidateOutputFilePath()) { lyt.Export(GIF); } }); } }
//This example demonstrates how to export a layout to JPEG. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToJPEGExample { public static Task ExportLayoutToJPEGAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create JPEG format with appropriate settings JPEGFormat JPEG = new JPEGFormat(); JPEG.Resolution = 300; JPEG.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (JPEG.ValidateOutputFilePath()) { lyt.Export(JPEG); } }); } }
//This example demonstrates how to export a layout to PDF. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToPDFExample { public static Task ExportLayoutToPDFAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create PDF format with appropriate settings PDFFormat PDF = new PDFFormat(); PDF.Resolution = 300; PDF.OutputFileName = Path; //PDF.Password = "xxx"; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (PDF.ValidateOutputFilePath()) { lyt.Export(PDF); } }); } }
//This example demonstrates how to export a layout to PNG. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToPNGExample { public static Task ExportLayoutToPNGAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create PNG format with appropriate settings PNGFormat PNG = new PNGFormat(); PNG.Resolution = 300; PNG.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (PNG.ValidateOutputFilePath()) { lyt.Export(PNG); } }); } }
//This example demonstrates how to export a layout to SVG. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToSVGExample { public static Task ExportLayoutToSVGAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create SVG format with appropriate settings SVGFormat SVG = new SVGFormat(); SVG.Resolution = 300; SVG.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (SVG.ValidateOutputFilePath()) { lyt.Export(SVG); } }); } }
//This example demonstrates how to export a layout to TGA. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToTGAExample { public static Task ExportLayoutToTGAAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create TGA format with appropriate settings TGAFormat TGA = new TGAFormat(); TGA.Resolution = 300; TGA.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (TGA.ValidateOutputFilePath()) { lyt.Export(TGA); } }); } }
//This example demonstrates how to export a layout to TIFF. //Added references using ArcGIS.Desktop.Core; //Project using ArcGIS.Desktop.Layouts; //Layout classes using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask using ArcGIS.Desktop.Mapping; //Export formats public class ExportLayoutToTIFFExample { public static Task ExportLayoutToTIFFAsync(string LayoutName, string Path) { //Reference a layoutitem in a project by name LayoutProjectItem layoutItem = Project.Current.GetItems<LayoutProjectItem>().FirstOrDefault(item => item.Name.Equals(LayoutName)); if (layoutItem == null) return Task.FromResult<Layout>(null); //Create TIFF format with appropriate settings TIFFFormat TIFF = new TIFFFormat(); TIFF.Resolution = 300; TIFF.OutputFileName = Path; return QueuedTask.Run(() => { //Export Layout Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem if (TIFF.ValidateOutputFilePath()) { lyt.Export(TIFF); } }); } }
//Export multiple map series pages to PDF //Create a PDF export format PDFFormat msPDF = new PDFFormat() { Resolution = 300, OutputFileName = filePath, DoCompressVectorGraphics = true }; //Set up the export options for the map series MapSeriesExportOptions MSExport_custom = new MapSeriesExportOptions() { ExportPages = ExportPages.Custom, CustomPages = "1-3, 5", ExportFileOptions = ExportFileOptions.ExportAsSinglePDF, ShowSelectedSymbology = false }; //Check to see if the path is valid and export if (msPDF.ValidateOutputFilePath()) { layout.Export(msPDF, MSExport_custom); //Export the PDF to a single, multiple page PDF. }
//Export multiple map series pages to TIFF //Create a TIFF export format TIFFFormat msTIFF = new TIFFFormat() { Resolution = 300, OutputFileName = filePath, ColorMode = TIFFColorMode.TwentyFourBitTrueColor, HasGeoTiffTags = true, HasWorldFile = true }; //Set up the export options for the map series MapSeriesExportOptions MSExport_All = new MapSeriesExportOptions() { ExportPages = ExportPages.All, ExportFileOptions = ExportFileOptions.ExportMultipleNames, ShowSelectedSymbology = false }; //Check to see if the path is valid and export if (msPDF.ValidateOutputFilePath()) { layout.Export(msPDF, MSExport_All); //Export each page to a TIFF and apppend the page name suffix to each output file }
await QueuedTask.Run(() => lyt.Export(PDF));
//Export a single page layout to PDF. //Create a PDF format with appropriate settings //BMP, EMF, EPS, GIF, JPEG, PNG, SVG, TGA, and TFF formats are also available for export PDFFormat PDF = new PDFFormat() { OutputFileName = filePath, Resolution = 300, DoCompressVectorGraphics = true, DoEmbedFonts = true, HasGeoRefInfo = true, ImageCompression = ImageCompression.Adaptive, ImageQuality = ImageQuality.Best, LayersAndAttributes = LayersAndAttributes.LayersAndAttributes }; //Check to see if the path is valid and export if (PDF.ValidateOutputFilePath()) { await QueuedTask.Run(() => layout.Export(PDF)); //Export the layout to PDF on the worker thread }
//Export a map series with multiple pages to a single PDF. //Create PDF format with appropriate settings PDFFormat MS_PDF = new PDFFormat() { OutputFileName = filePath, Resolution = 300, DoCompressVectorGraphics = true, DoEmbedFonts = true, HasGeoRefInfo = true, ImageCompression = ImageCompression.Adaptive, ImageQuality = ImageQuality.Best, LayersAndAttributes = LayersAndAttributes.LayersAndAttributes }; //Set up map series export options MapSeriesExportOptions MS_ExportOptions = new MapSeriesExportOptions() { ExportPages = ExportPages.Custom, //Provide a specific list of pages CustomPages = "1-3, 5", //Only used if ExportPages.Custom is set ExportFileOptions = ExportFileOptions.ExportAsSinglePDF, //Export all pages to a single, multi-page PDF ShowSelectedSymbology = false //Do no show selection symbology in the output }; //Export on the worker thread await QueuedTask.Run(() => { //Check to see if the path is valid and export if (MS_PDF.ValidateOutputFilePath()) { layout.Export(MS_PDF, MS_ExportOptions); //Export to PDF } });
//Export each page of a map series to an individual TIFF file. //Create TIFF format with appropriate settings TIFFFormat TIFF = new TIFFFormat() { OutputFileName = filePath, Resolution = 300, ColorMode = TIFFColorMode.TwentyFourBitTrueColor, HasGeoTiffTags = true, HasWorldFile = true, ImageCompression = TIFFImageCompression.LZW }; //Set up map series export options MapSeriesExportOptions MSExportOptions_TIFF = new MapSeriesExportOptions() { ExportPages = ExportPages.All, //All pages ExportFileOptions = ExportFileOptions.ExportMultipleNames, //Export each page to an individual file using page name as a suffix. ShowSelectedSymbology = true //Include selection symbology in the output }; //Export on the worker thread await QueuedTask.Run(() => { //Check to see if the path is valid and export if (TIFF.ValidateOutputFilePath()) { layout.Export(TIFF, MSExportOptions_TIFF); //Export to TIFF } });
Target Platforms: Windows 11, Windows 10