DrvStartBanding function (winddi.h)

The DrvStartBanding function is called by GDI when it is ready to start sending bands of a physical page to the driver for rendering.


BOOL DrvStartBanding(
  [in] SURFOBJ *pso,
  [in] POINTL  *pptl


[in] pso

Caller-supplied pointer to a SURFOBJ structure, which identifies the banding surface.

[in] pptl

Caller-supplied pointer to a POINTL structure to receive the function-supplied origin of the first band.

Return value

If the operation succeeds, the function should return TRUE. Otherwise, it should call the Win32 SetLastError function to set an error code, and then return FALSE.


If a printer graphics DLL uses GDI-managed surfaces, and if it supports surface banding, it must provide a DrvNextBand function. GDI calls DrvStartBanding only if the printer graphics DLL's DrvEnableSurface function previously called EngMarkBandingSurface to specify a banding surface.

The DrvStartBanding function's purpose is to allow the printer graphics DLL to perform any initializations needed before banding operations begin on a physical page, and to provide GDI with the indices of the first band's origin.

The DrvStartBanding function is called once per page. Each time GDI has finished drawing a band, it calls DrvNextBand so the driver can send the band to the printer.


Target Platform Desktop
Header winddi.h (include Winddi.h)

See also