ArcObjects Library Reference (Carto)  

IActiveView.Output Method

Renders the view to the specified DC.

[Visual Basic .NET]
Public Sub Output ( _
    ByVal hDC As Integer, _
    ByVal Dpi As Integer, _
    ByRef pixelBounds As tagRECT, _
    ByVal VisibleBounds As IEnvelope, _
    ByVal TrackCancel As ITrackCancel _
)
[C#]
public void Output (
    int hDC,
    int Dpi,
    ref tagRECT pixelBounds,
    ref IEnvelope VisibleBounds,
    ref ITrackCancel TrackCancel
);
[C++]
HRESULT Output(
  OLE_HANDLE hDC,
  long Dpi,
  tagRECT* pixelBounds,
  IEnvelope* VisibleBounds,
  ITrackCancel* TrackCancel
);
[C++]

Parameters

hDC [in]

  hDC is a parameter of type OLE_HANDLE

Dpi [in]   Dpi is a parameter of type long pixelBounds [in]

  pixelBounds is a parameter of type tagRECT

VisibleBounds [in]

  VisibleBounds is a parameter of type IEnvelope

TrackCancel [in]

  TrackCancel is a parameter of type ITrackCancel

Product Availability

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

Description

This method is used to draw to a non-app window hDC (see Windows GDI for more info). The ArcMap printing and exporting commands use this method. When drawing to an hWnd, normally IActiveView::Draw is used instead of this method because it handles caching and scrollbars.

Remarks

Parameter use is as follows:

hDC - Output device.
dpi - Dots per inch (resolution). If Null is passed then this defaults to the resolution of the hDC. If that cannot be sampled, then this defaults to the window resolution.
pixelBounds - Device rectangle specified in pixels.
VisibleBounds - Zoom extent. If Null is passed then this defaults to the current visible extent.

All other display attributes are copied from the ActiveView

If you want to draw the data frame to a 640x480 bitmap for example, specify the following parameter values:

 dpi - 0
 pixel bounds - { 0, 0, 640, 480 }
 visible bounds - 0

If you want to create a bitmap that will print 8.5 x 11 on a 300 DPI printer, specify the following parameter values:

 dpi - 300
 pixel bounds - { 0, 0, 8.5 * dpi, 11 * dpi }
 visible bounds - 0

If you want to zoom to a certain location and draw it on a 300x300 bitmap, specify the following parameter values:

 dpi - 0
 pixel bounds - { 0, 0, 300, 300 }
 visible bounds -  { -45.0, 44.0, -44.0, 45.0 }

The value of IDisplayTransformation::Resolution does not affect the results of this method.

The value of IOutputRasterSettings::ResampleRatio does affect the results of the this method. When rasters are drawn, they get resampled as specified in this attribute.

 

See Also

IActiveView Interface

.NET Snippets

Create JPEG (hi-resolution) from ActiveView | Create JPEG from ActiveView |