L_EfxPatternFillRect

#include "l_bitmap.h"

L_LTEFX_API L_INT L_EfxPatternFillRect(hDC, pRect, uStyle, crBack, crFore)

HDC hDC;

handle to the target device context

RECT *pRect;

pointer to the display rectangle

L_UINT uStyle;

filling style

COLORREF crBack;

background color

COLORREF crFore;

foreground color

Draws a rectangle into the target device context, and then fills the rectangle with the specified pattern and color.

Parameter Description
hDC Handle to the target device context.
pRect Pointer to the display destination rectangle.
uStyle Filling style. The following are possible values. (Values cannot be combined.)
  Value Meaning
  EFX_PATTERN_SOLID Solid ◼
  EFX_PATTERN_HORZ_LINE Horizontal lines ▤
  EFX_PATTERN_VERT_LINE Vertical lines ▥
  EFX_PATTERN_DOWNWARD_DIAG Downward diagonal lines ▨
  EFX_PATTERN_UPWARD_DIAG Upward diagonal lines ▧
  EFX_PATTERN_CROSS Cross line ▦
  EFX_PATTERN_DIAG_CROSS Diagonal cross lines ▩
  EFX_PATTERN_MAX Diagonal cross lines ▩
crBack COLORREF value that specifies the background color.
crFore COLORREF value that specifies the foreground color.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

For general information, refer to Implementing Special Effects.

Required DLLs and Libraries

LTEFX

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

Win32, x64.

See Also

Functions:

L_EfxDraw3dShape, L_EfxDraw3dText, L_EfxDrawFrame, L_EfxDrawRotated3dText, L_EfxEffectBlt, L_EfxGradientFillRect, L_EfxPaintBitmap, L_EfxPaintTransition, L_EfxPatternFillRect

Topics:

Implementing Special Effects

 

Using Color Values in LEADTOOLS

Example

This example shows the minimum requirements for using the L_EfxPatternFillRect function to draw and fill a rectangle with a pattern and color.

L_INT EfxPatternFillRectExample(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 pattern filled rectangle */ 
  nRet = L_EfxPatternFillRect (hdc,                    /* device context */ 
                               pDest,                  /* destination rectangle */ 
                               EFX_PATTERN_DIAG_CROSS, /* diagonal cross pattern */ 
                               RGB ( 0,0,0 ),          /* background color, black */ 
                               RGB ( 0,0,255 ) );      /* foreground color, blue */ 
  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 Version 20.0.2018.7.30
Products | Support | Contact Us | Copyright Notices
© 1991-2018 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C API Help