DRAWPATTERNRECT

  #define DRAWPATTERNRECT 25    

  short Control(lpDevice, DRAWPATTERNRECT, lpInData, NULL)    
  LPPDEVICE lpDevice;    
  LPPOINT lpInData;    

The DRAWPATTERNRECT escape creates a pattern, gray scale, or solid black rectangle using the pattern or rule capabilities of PCL printers. With the Hewlett-Packard LaserJet IIP, this escape can also create a solid white rectangle. A gray scale is a gray pattern that contains a specific mixture of black and white pixels. A PCL printer is an HP LaserJet or LaserJet-compatible printer.

Parameters

lpDevice

Points to a PDEVICE structure specifying the destination device.

lpInData

Points to a PATTERNRECT structure containing information about the rectangle to create. The structure has the following form:

typedef struct tagPATTERNRECT {

POINT prPosition;

POINT prSize;

WORD prStyle;

WORD prPattern;

} PATTERNRECT;

Return Value

The return value is nonzero if the escape is successful. Otherwise, it is zero.

Comments

An application should use the QUERYESCSUPPORT escape to determine whether a device is capable of drawing patterns and rules before implementing this escape. If a printer is capable of outputting a white rule, the return value for QUERYESCSUPPORT is 2.

The effect of a white rule is to erase any text or other pattern rules already written in the specified area.

The driver sends all text and rules in the first band before any GDI bitmap graphics are sent. Therefore, it is not possible to erase bitmap graphics with white rules.

If an application uses the BANDINFO escape, the drive should send all patterns and rectangles specified by the DRAWPATTERNRECT escape in the first band.

Patterns and rules created with this escape may not be erased by placing opaque objects over them unless you have white rule capability. An application should use the function calls provided in GDI to obtain this effect.

See Also

BANDINFO, QUERYESCSUPPORT