Output

WORD Output(
  LPPDEVICE lpDestDev, 
  WORD wStyle, 
  WORD wCount, 
  LPPOINT lpPoints, 
  LPPEN lpPPen, 
  LPPBRUSH lpPBrush, 
  LPDRAWMODE lpDrawMode, 
  LPRECT lpClipRect
 );
 

Draws the lines and figures specified by the wStyle parameter.

1 Function was successful.
0 Unrecoverable error occurred.
-1 Function does not support the specified style.

lpDestDev
Address of a PDEVICE or PBITMAP structure that specifies the destination device or bitmap.
wStyle
Type of output to draw. Can be one of these values:
OS_ALTPOLYGON (22) Draws a polygon and fills it using the alternate-filling method.
OS_ARC (3) Draws an arc.
OS_BEGINNSCAN (80) Begins a series of scan lines.
OS_CHORD (39) Draws a closed figure consisting of an arc and the chord connecting the endpoints of the arc.
OS_CIRCLE (55) Draws a circle.
OS_ELLIPSE (7) Draws an ellipse.
OS_ENDNSCAN (81) Ends a series of scan lines.
OS_PIE (23) Draws a closed figure consisting of an arc and two line segments connecting the endpoints of the arc to the centerpoint of the arc's bounding rectangle.
OS_POLYBEZIER (1) Draws a Bezier spline.
OS_POLYLINE (18) Draws a set of connected line segments.
OS_POLYSCANLINE (5) Draws a set of horizontal line segments.
OS_RECTANGLE (6) Draws a rectangle.
OS_ROUNDRECT (72) Draws a rectangle with round corners.
OS_SCANLINES (4) Draws a set of horizontal line segments.
OS_WINDPOLYGON (20) Draws a polygon and fill it using the winding-number-filling method.

For a full description of each style, see the following Output descriptions.

wCount
Number of POINT structures in the array pointed to by the lpPoints parameter.
lpPoints
Address of an array of POINT structures. The array has wCount elements. For most output styles, this parameter contains the device coordinates for each point in the figure.
lpPPen
Address of a PPEN structure that specifies the physical pen that is used to use to draw lines and borders. This parameter is NULL if no lines or borders are to be drawn.
lpPBrush
Address of a PBRUSH structure that specifies the physical brush that is used to use to fill the interiors of figures and draw scan lines. This parameter is NULL if no interiors or scan lines are to be drawn.
lpDrawMode
Address of a DRAWMODE structure that contains information to use when drawing, such as binary-raster operation, background mode, and foreground and background color.
lpClipRect
Address of a RECT structure that contains coordinates for the clipping rectangle. If this parameter is NULL, the clipping rectangle is the entire display surface.

The export ordinal for this function is 8.

GDI calls this function when an application calls functions, such as LineTo, Rectangle, and Ellipse.

Every graphics driver must export an Output function.

Output uses the binary-raster operation, background mode, and background color specified by the DRAWMODE structure to draw lines and scan lines. Output uses the binary-raster operation to determine how to combine pen or brush colors with the existing color on the display surface. The function uses background mode to determine how to fill gaps in styled lines or hatched brushes. If the background mode is OPAQUE, Output combines the background color with the existing color in the gaps. If the background mode is TRANSPARENT, Output leaves the existing color unchanged. For all pen or brush styles other than styled lines and hatched brushes, Output draws as if the background mode is OPAQUE regardless of the actual background mode.

Output uses the lpClipRect parameter only if the driver has set either the CP_RECTANGLE or CP_REGION value in the dpClip member of the GDIINFO structure. Output ensures that the coordinates specified by the lpClipRect parameter do not extended beyond the boundaries of the display surface.

See Also

DRAWMODE, PDEVICE, PBITMAP, POINT, RECT