ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / TIFFFormat Class
Members Example

In This Topic
    TIFFFormat Class
    In This Topic
    Represents a Tagged Image File Format (TIFF) object that can be used to export a MapView, MapFrame, or a Layout.
    Syntax
    public class TIFFFormat : ExportFormat 
    Public Class TIFFFormat 
       Inherits ExportFormat
    Remarks
    TIFF files are the most versatile raster format. TIFFs can store pixel data at several bit depths and can be compressed with either lossy or loss less compression techniques depending on file size and accuracy requirements. They are the best choice for importing into image editing applications across operating systems. They cannot be natively viewed by a web browser. TIFFs exported from a Map or MapFrame also support georeferencing information in GeoTIFF tags or in a separate world file for use as raster data.
    Example
    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
      }
    });
    Inheritance Hierarchy

    System.Object
       ArcGIS.Desktop.Mapping.ExportFormat
          ArcGIS.Desktop.Mapping.TIFFFormat

    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also