Represents a Tagged Image File Format (TIFF) object that can be used to export a
MapView,
MapFrame, or a
Layout.
ExportTIFF_Layout
//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);
}
});
}
}
ExportTIFF_MapFrame
//This example demonstrates how to export an individual map frame on 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 ExportMapFrameToTIFFExample
{
public static Task ExportMapFrameToTIFFAsync(string LayoutName, string MFName, 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 MapFrame
Layout lyt = layoutItem.GetLayout(); //Loads and returns the layout associated with a LayoutItem
MapFrame mf = lyt.FindElement(MFName) as MapFrame;
TIFF.OutputFileName = Path;
if (TIFF.ValidateOutputFilePath())
{
mf.Export(TIFF);
}
});
}
}
ExportTIFF_ActiveMap
//This example demonstrates how to export the active mapview to TIFF.
//Added references
using ArcGIS.Desktop.Framework.Threading.Tasks; //QueuedTask
using ArcGIS.Desktop.Mapping; //MapView and Export formats
public class ExportActiveMapToTIFFExample
{
public static Task ExportActiveMapToTIFFAsync(string Path)
{
return QueuedTask.Run(() =>
{
//Reference the active map view
MapView mapv = MapView.Active;
//Create TIFF format with appropriate settings
TIFFFormat TIFF = new TIFFFormat();
TIFF.Resolution = 300;
TIFF.Height = 500;
TIFF.Width = 800;
TIFF.OutputFileName = Path;
//Export active map view
if (TIFF.ValidateOutputFilePath())
{
mapv.Export(TIFF);
}
});
}
}
Layout_ExportMS_TIFF
//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
}
TIFF_Constructor
TIFFFormat TIFF = new TIFFFormat();
Export a map series to individual TIFF files
//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
ArcGIS Pro version: 3 or higher.