com.esri.arcgis.output
Class ExportAI

java.lang.Object
  extended by com.esri.arcgis.output.ExportAI
All Implemented Interfaces:
IOutputRasterSettings, com.esri.arcgis.interop.RemoteObjRef, IExport, IExportAI, IExportAI2, IExportColorspaceSettings, IExportVector, IExportVectorOptions, IExportVectorOptionsEx, ISettingsInRegistry, ISupportErrorInfo, Serializable

public class ExportAI
extends Object
implements com.esri.arcgis.interop.RemoteObjRef, IExportVector, IExportVectorOptions, IExportVectorOptionsEx, IExportAI, IExportAI2, IExport, ISettingsInRegistry, IExportColorspaceSettings, ISupportErrorInfo, IOutputRasterSettings

Class used to export maps to AI (Adobe Illustrator) format.

Remarks

Use the ExportAI CoClass to export your map to Adobe Illustrator (AI) format. AI files are an excellent format for post-processing in Adobe Illustrator, and are frequently used as an interchange format for publishing. The ArcMap AI format preserves most layers from the ArcMap table of contents: annotation, labels, and data frame graphic text are exported to a layer called "Graphics"; map surround elements, graphic text elements, and raster data are exported to a layer called "ArcGIS Layer." All other data layers retain the same layer name as in ArcMap.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

See Also:
Serialized Form

Constructor Summary
ExportAI()
          Constructs a ExportAI using ArcGIS Engine.
ExportAI(Object obj)
          Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
ExportAI theExportAI = (ExportAI) obj;
 
Method Summary
 void cleanup()
          Cleanup should clean all temporary files, free used memory, etc...
 boolean equals(Object o)
          Compare this object with another
 void finishExporting()
          Shuts down the Exporter.
static String getClsid()
          getClsid.
 int getColorspace()
          Colorspace option.
 String getExportFileName()
          The Export File Name.
 int getExportPictureSymbolOptions()
          Options describing what to do with Picture Symbol on export.
 String getFilter()
          Filter String used in the CFileDialog class.
 int getMaxVertexNumber()
          Maximum number of vertices in feature.
 String getName()
          The Name of the Exporter.
 IEnvelope getPixelBounds()
          The Export Bounds in Pixels (The Pixel Bounds of the Export surface).
 int getPriority()
          Exporter's priority - the order of appearance in the user interface.
 int getResampleRatio()
          This coefficient states the scale level for the raster when it goes to output.
 double getResolution()
          The Export Resolution.
 int hashCode()
          the hashcode for this object
 void interfaceSupportsErrorInfo(GUID riid)
          interfaceSupportsErrorInfo
 boolean isEmbedFonts()
          The Embed Fonts option.
 boolean isExportFeatureName()
          isExportFeatureName
 boolean isPolygonizeMarkers()
          Polygonize (represent as vectors instead of fonts) marker symbols option.
 void restoreDefault()
          Restore the default object settings.
 void restoreForCurrentUser(String bstrRegPath)
          Restore object settings.
 void setColorspace(int pcolorspace)
          Colorspace option.
 void setEmbedFonts(boolean embedFonts)
          The Embed Fonts option.
 void setExportFeatureName(boolean pExportAttrs)
          setExportFeatureName
 void setExportFileName(String fileName)
          The Export File Name.
 void setExportPictureSymbolOptions(int opt)
          Options describing what to do with Picture Symbol on export.
 void setMaxVertexNumber(int lMaxVertices)
          Maximum number of vertices in feature.
 void setPixelBounds(IEnvelope pixelBounds)
          The Export Bounds in Pixels (The Pixel Bounds of the Export surface).
 void setPolygonizeMarkers(boolean bPolygonizeMarkers)
          Polygonize (represent as vectors instead of fonts) marker symbols option.
 void setResampleRatio(int pRatio)
          This coefficient states the scale level for the raster when it goes to output.
 void setResolution(double res)
          The Export Resolution.
 void setStepProgressorByRef(IStepProgressor rhs1)
          Export will update a Progress Bar if StepProgressor is not NULL.
 void setTrackCancelByRef(ITrackCancel rhs1)
          Export will react on Cancel if TrackCancel is not NULL.
 int startExporting()
          Initializes the Exporter.
 void storeForCurrentUser(String bstrRegPath)
          Store object settings.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.esri.arcgis.interop.RemoteObjRef
getJintegraDispatch, release
 

Constructor Detail

ExportAI

public ExportAI()
         throws IOException,
                UnknownHostException
Constructs a ExportAI using ArcGIS Engine.

Throws:
IOException - if there are interop problems
UnknownHostException - if there are interop problems

ExportAI

public ExportAI(Object obj)
         throws IOException
Deprecated. As of ArcGIS 9.2, replaced by normal Java casts.
ExportAI theExportAI = (ExportAI) obj;

Construct a ExportAI using a reference to such an object returned from ArcGIS Engine or Server. This is semantically equivalent to casting obj to ExportAI.

Parameters:
obj - an object returned from ArcGIS Engine or Server
Throws:
IOException - if there are interop problems
Method Detail

getClsid

public static String getClsid()
getClsid.


equals

public boolean equals(Object o)
Compare this object with another

Overrides:
equals in class Object

hashCode

public int hashCode()
the hashcode for this object

Overrides:
hashCode in class Object

setPolygonizeMarkers

public void setPolygonizeMarkers(boolean bPolygonizeMarkers)
                          throws IOException,
                                 AutomationException
Polygonize (represent as vectors instead of fonts) marker symbols option.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setPolygonizeMarkers in interface IExportVectorOptions
Parameters:
bPolygonizeMarkers - The bPolygonizeMarkers (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isPolygonizeMarkers

public boolean isPolygonizeMarkers()
                            throws IOException,
                                   AutomationException
Polygonize (represent as vectors instead of fonts) marker symbols option.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isPolygonizeMarkers in interface IExportVectorOptions
Returns:
The bPolygonizeMarkers
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setMaxVertexNumber

public void setMaxVertexNumber(int lMaxVertices)
                        throws IOException,
                               AutomationException
Maximum number of vertices in feature.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setMaxVertexNumber in interface IExportVectorOptions
Parameters:
lMaxVertices - The lMaxVertices (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getMaxVertexNumber

public int getMaxVertexNumber()
                       throws IOException,
                              AutomationException
Maximum number of vertices in feature.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getMaxVertexNumber in interface IExportVectorOptions
Returns:
The lMaxVertices
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExportPictureSymbolOptions

public void setExportPictureSymbolOptions(int opt)
                                   throws IOException,
                                          AutomationException
Options describing what to do with Picture Symbol on export.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setExportPictureSymbolOptions in interface IExportVectorOptionsEx
Parameters:
opt - A com.esri.arcgis.display.esriPictureSymbolOptions constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExportPictureSymbolOptions

public int getExportPictureSymbolOptions()
                                  throws IOException,
                                         AutomationException
Options describing what to do with Picture Symbol on export.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
getExportPictureSymbolOptions in interface IExportVectorOptionsEx
Returns:
A com.esri.arcgis.display.esriPictureSymbolOptions constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setEmbedFonts

public void setEmbedFonts(boolean embedFonts)
                   throws IOException,
                          AutomationException
The Embed Fonts option.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setEmbedFonts in interface IExportAI
Parameters:
embedFonts - The embedFonts (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isEmbedFonts

public boolean isEmbedFonts()
                     throws IOException,
                            AutomationException
The Embed Fonts option.

Remarks

At the 9.0 release, font embedding for the AI format is not yet supported. Changes to the value of this property will be ignored.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
isEmbedFonts in interface IExportAI
Returns:
The embedFonts
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExportFeatureName

public void setExportFeatureName(boolean pExportAttrs)
                          throws IOException,
                                 AutomationException
setExportFeatureName

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
setExportFeatureName in interface IExportAI2
Parameters:
pExportAttrs - The pExportAttrs (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isExportFeatureName

public boolean isExportFeatureName()
                            throws IOException,
                                   AutomationException
isExportFeatureName

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Specified by:
isExportFeatureName in interface IExportAI2
Returns:
The pExportAttrs
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getName

public String getName()
               throws IOException,
                      AutomationException
The Name of the Exporter.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getName in interface IExport
Returns:
The name
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getFilter

public String getFilter()
                 throws IOException,
                        AutomationException
Filter String used in the CFileDialog class.

Remarks

This method is primarily used for defining the extension of the export file name within the Export Map dialog. The string contained in this value is a null-terminated pattern string that follows the standard for a Windows Open and Save As dialog filter. The value of this property can change according to the state of the export object. An ExportSVG object, for example, returns "SVG (*.svg)|*.svg" when its compression property is False, and "Compressed SVG (*.svgz)|*.svgz" when the compression property is True. This makes the Filter ideal for automatically assigning the appropriate file name extension for an export file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getFilter in interface IExport
Returns:
The filter
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPriority

public int getPriority()
                throws IOException,
                       AutomationException
Exporter's priority - the order of appearance in the user interface.

Remarks

Primarily used by export dialogs for ordering the appearance of export formats in the 'Save As...' pulldown list. By ordering through this property, the export dialog can group similar formats together. For example, all raster export formats are grouped together in the 'Save As...' list.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPriority in interface IExport
Returns:
The pPriority
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setStepProgressorByRef

public void setStepProgressorByRef(IStepProgressor rhs1)
                            throws IOException,
                                   AutomationException
Export will update a Progress Bar if StepProgressor is not NULL.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setStepProgressorByRef in interface IExport
Parameters:
rhs1 - A reference to a com.esri.arcgis.system.IStepProgressor (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setTrackCancelByRef

public void setTrackCancelByRef(ITrackCancel rhs1)
                         throws IOException,
                                AutomationException
Export will react on Cancel if TrackCancel is not NULL.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setTrackCancelByRef in interface IExport
Parameters:
rhs1 - A reference to a com.esri.arcgis.system.ITrackCancel (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setPixelBounds

public void setPixelBounds(IEnvelope pixelBounds)
                    throws IOException,
                           AutomationException
The Export Bounds in Pixels (The Pixel Bounds of the Export surface).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setPixelBounds in interface IExport
Parameters:
pixelBounds - A reference to a com.esri.arcgis.geometry.IEnvelope (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPixelBounds

public IEnvelope getPixelBounds()
                         throws IOException,
                                AutomationException
The Export Bounds in Pixels (The Pixel Bounds of the Export surface).

Remarks

The PixelBounds represents the height and width of the export image in device units (usually pixels for a export file). To set up values to use in this property, get the height and width of the image draw to screen. Then multiply each dimension by the ratio of the output resolution to screen resolution.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getPixelBounds in interface IExport
Returns:
A reference to a com.esri.arcgis.geometry.IEnvelope
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setExportFileName

public void setExportFileName(String fileName)
                       throws IOException,
                              AutomationException
The Export File Name.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setExportFileName in interface IExport
Parameters:
fileName - The fileName (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getExportFileName

public String getExportFileName()
                         throws IOException,
                                AutomationException
The Export File Name.

Remarks

You must assign a value to the ExportFileName property before calling the IExport::StartExporting() method. There are two exceptions to this. If IExport is controlling a ExportBMP or ExportEMF object, you can assign an empty string to the ExportFileName property without an error being raised on StartExporting(). This is to allow cases where the application will use the export object as a intermediate container for a drawing, and won't be written to an export file.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getExportFileName in interface IExport
Returns:
The fileName
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setResolution

public void setResolution(double res)
                   throws IOException,
                          AutomationException
The Export Resolution.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setResolution in interface IExport
Parameters:
res - The res (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getResolution

public double getResolution()
                     throws IOException,
                            AutomationException
The Export Resolution.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getResolution in interface IExport
Returns:
The res
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

startExporting

public int startExporting()
                   throws IOException,
                          AutomationException
Initializes the Exporter.

Remarks

The StartExporting method causes the export object to allocate memory for the export based on resolution, bit depth, and pixel bounds. The method returns a long that represents the hDC (Windows GDI Device Context handle) of the export object. After this method is called, the export object is ready to receive GDI draw instructions directed to its hDC.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
startExporting in interface IExport
Returns:
The hDC (A COM typedef)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

finishExporting

public void finishExporting()
                     throws IOException,
                            AutomationException
Shuts down the Exporter.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
finishExporting in interface IExport
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

cleanup

public void cleanup()
             throws IOException,
                    AutomationException
Cleanup should clean all temporary files, free used memory, etc...

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
cleanup in interface IExport
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

restoreForCurrentUser

public void restoreForCurrentUser(String bstrRegPath)
                           throws IOException,
                                  AutomationException
Restore object settings.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
restoreForCurrentUser in interface ISettingsInRegistry
Parameters:
bstrRegPath - The bstrRegPath (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

storeForCurrentUser

public void storeForCurrentUser(String bstrRegPath)
                         throws IOException,
                                AutomationException
Store object settings.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
storeForCurrentUser in interface ISettingsInRegistry
Parameters:
bstrRegPath - The bstrRegPath (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

restoreDefault

public void restoreDefault()
                    throws IOException,
                           AutomationException
Restore the default object settings.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
restoreDefault in interface ISettingsInRegistry
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setColorspace

public void setColorspace(int pcolorspace)
                   throws IOException,
                          AutomationException
Colorspace option.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setColorspace in interface IExportColorspaceSettings
Parameters:
pcolorspace - A com.esri.arcgis.output.esriExportColorspace constant (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getColorspace

public int getColorspace()
                  throws IOException,
                         AutomationException
Colorspace option.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getColorspace in interface IExportColorspaceSettings
Returns:
A com.esri.arcgis.output.esriExportColorspace constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

interfaceSupportsErrorInfo

public void interfaceSupportsErrorInfo(GUID riid)
                                throws IOException,
                                       AutomationException
interfaceSupportsErrorInfo

Description

Indicates whether the interface supports IErrorInfo.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
interfaceSupportsErrorInfo in interface ISupportErrorInfo
Parameters:
riid - A Structure: com.esri.arcgis.support.ms.stdole.GUID (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getResampleRatio

public int getResampleRatio()
                     throws IOException,
                            AutomationException
This coefficient states the scale level for the raster when it goes to output. 1 means 1:1; 2 means 1:2, i.e. 2 times less than the output quality.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
getResampleRatio in interface IOutputRasterSettings
Returns:
The pRatio
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

setResampleRatio

public void setResampleRatio(int pRatio)
                      throws IOException,
                             AutomationException
This coefficient states the scale level for the raster when it goes to output. 1 means 1:1; 2 means 1:2, i.e. 2 times less than the output quality.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Specified by:
setResampleRatio in interface IOutputRasterSettings
Parameters:
pRatio - The pRatio (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.