This documentation is archived and is not being maintained.

Graphics.EnumerateMetafile Method (Metafile, PointF[], RectangleF, GraphicsUnit, Graphics.EnumerateMetafileProc, IntPtr, ImageAttributes)

Sends the records in a selected rectangle from a Metafile, one at a time, to a callback method for display in a specified parallelogram using specified image attributes.

Namespace:  System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public void EnumerateMetafile(
	Metafile metafile,
	PointF[] destPoints,
	RectangleF srcRect,
	GraphicsUnit unit,
	Graphics..::.EnumerateMetafileProc callback,
	IntPtr callbackData,
	ImageAttributes imageAttr


Type: System.Drawing.Imaging.Metafile

Metafile to enumerate.

Type: System.Drawing.PointF[]

Array of three PointF structures that define a parallelogram that determines the size and location of the drawn metafile.

Type: System.Drawing.RectangleF

RectangleF structure that specifies the portion of the metafile, relative to its upper-left corner, to draw.

Type: System.Drawing.GraphicsUnit

Member of the GraphicsUnit enumeration that specifies the unit of measure used to determine the portion of the metafile that the rectangle specified by the srcRect parameter contains.

Type: System.Drawing.Graphics.EnumerateMetafileProc

Graphics.EnumerateMetafileProc delegate that specifies the method to which the metafile records are sent.

Type: System.IntPtr

Internal pointer that is required, but ignored. You can pass Zero for this parameter.

Type: System.Drawing.Imaging.ImageAttributes

ImageAttributes that specifies image attribute information for the drawn image.

This method enumerates the records contained in the specified metafile. Each record is individually sent to a callback method specified by the callback parameter. Typically, the callback method calls the PlayRecord method to "play back", or draw, the record.

If the callback method calls PlayRecord, it must do so by calling the PlayRecord method of the specific Metafile that is being enumerated.

The destPoints parameter specifies three points of a parallelogram. The three PointF structures represent the upper-left, upper-right, and lower-left corners of the parallelogram. The fourth point is extrapolated from the first three to form a parallelogram. The drawn metafile is scaled and sheared to fit the parallelogram.

Any drawing that takes place outside of the rectangle specified by the srcRect parameter is ignored.

The image attributes specified by the imageAttr parameter replace those specified when the metafile was written.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0