#include "l_bitmap.h"
L_LTEFX_API L_INT L_EfxGradientFillRect(hDC, pRect, uStyle, crStart, crEnd, uSteps)
Draws a rectangle into the target device context, and then fills the rectangle with a gradient from the specified starting color to the specified ending color.
Handle to the target device context.
Pointer to the display destination rectangle.
Gradient style. For valid values, refer to Effect Gradient Styles.
COLORREF value that specifies the starting color.
COLORREF value that specifies the ending color.
Number of gradient color steps. Valid values are 2 to 256.
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
Required DLLs and Libraries
Win32, x64.
This example shows the minimum requirements for using the L_EfxGradientFillRect function to draw and fill a rectangle with a color gradient.
L_INT EfxGradientFillRectExample(HWND hWnd,RECT* pDest)
{
L_INT nRet;
HDC hdc; /* Device context for the current window */
HPALETTE hSavedPalette = NULL; /* Temporary copy of the current system palette */
HPALETTE hOurPalette = NULL; /* The palette that we will use to paint */
L_INT nBitsPerPixel;
/* Get the device context */
hdc = GetDC (hWnd);
/* Check the device to see if we need a palette */
nBitsPerPixel = GetDeviceCaps( hdc, BITSPIXEL ) * GetDeviceCaps ( hdc, PLANES );
if ( nBitsPerPixel <=8 )
{
hOurPalette = (HPALETTE)GetStockObject (DEFAULT_PALETTE);
hSavedPalette = SelectPalette (hdc, hOurPalette, FALSE);
/* Realize our palette */
RealizePalette (hdc);
}
/* Draw the gradient filled rectangle */
nRet = L_EfxGradientFillRect(hdc, /* device context */
pDest, /* destination rectangle */
EFX_GRADIENT_ELLIPSE_TO_C, /* out to center */
RGB ( 255,0,0 ), /* starting color, red */
RGB ( 0,0,255 ), /* ending color, blue */
12 ); /* gradient color steps */
if(nRet != SUCCESS)
return nRet;
/* Restore the old palette */
if ( hOurPalette )
SelectPalette (hdc, hSavedPalette, FALSE);
/* Release the device context */
ReleaseDC(hWnd, hdc);
return SUCCESS;
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document