#include "l_bitmap.h"
L_LTEFX_API L_INT L_EfxGradientFillRect(hDC, pRect, uStyle, crStart, crEnd, uSteps)
HDC hDC; |
handle to the target device context |
RECT * pRect; |
pointer to the display rectangle |
L_UINT uStyle; |
gradient style |
COLORREF crStart; |
starting color |
COLORREF crEnd; |
ending color |
L_UINT uSteps; |
number of gradient color steps |
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.
Parameter |
Description |
hDC |
Handle to the target device context. |
pRect |
Pointer to the display destination rectangle. |
uStyle |
Gradient style. For valid values, refer to Effect Gradient Styles. |
crStart |
COLORREF value that specifies the starting color. |
crEnd |
COLORREF value that specifies the ending color. |
uSteps |
Number of gradient color steps. Valid values are 2 to 256. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Required DLLs and Libraries
For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64.
Functions: |
L_EfxDraw3dShape, L_EfxDraw3dText, L_EfxDrawFrame, L_EfxDrawRotated3dText, L_EfxEffectBlt, L_EfxPaintBitmap, L_EfxPaintTransition, L_EfxPatternFillRect. L_EfxTileRect |
Topics: |
|
|
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;
}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET