L_EfxDrawFrame

#include "l_bitmap.h"

L_LTEFX_API L_INT L_EfxDrawFrame(hDC, pRect, uFlags, uFrameWidth, crFrame, uInnerWidth, crInner1, crInner2, uOuterWidth, crOuter1, crOuter2)

HDC hDC;

handle to the target device context

RECT *pRect;

pointer to the display rectangle

L_UINT uFlags;

frame style

L_UINT uFrameWidth;

middle band width

COLORREF crFrame;

middle band color

L_UINT uInnerWidth;

inner band width

COLORREF crInner1;

inner band shadow color

COLORREF crInner2;

inner band highlight color

L_UINT uOuterWidth;

outer band width

COLORREF crOuter1;

outer band shadow color

COLORREF crOuter2;

outer band highlight color

Draws a rectangular frame having the specified style, color, and border width into the target device context.

Parameter Description
hDC Handle to the target device context.
pRect Pointer to the display destination rectangle.
uFlags Frame style. The following are valid values:
  Value Meaning
  EFX_FRAME_INNER_INSET [0x0000] Inner band inset
  EFX_FRAME_INNER_RAISED [0x0001] Inner band raised
  EFX_FRAME_OUTER_INSET [0x0000] Outer band inset
  EFX_FRAME_OUTER_RAISED [0x0010] Outer band raised
  EFX_FRAME_ADJUST_RECT [0x0100] Adjust dimensions of the destination rectangle
uFrameWidth Middle band width.
crFrame COLORREF value that specifies the middle band color.
uInnerWidth Inner band width.
crInner1 COLORREF value that specifies the inner band shadow color.
crInner2 COLORREF value that specifies the inner band highlight color.
uOuterWidth Outer band width.
crOuter1 COLORREF value that specifies the outer band shadow color.
crOuter2 COLORREF value that specifies the outer band highlight 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_EfxDrawRotated3dText, L_EfxEffectBlt, L_EfxGradientFillRect, L_EfxPaintBitmap, L_EfxPaintTransition, L_EfxPatternFillRect, L_EfxTileRect

Topics:

Implementing Special Effects

 

Using Color Values in LEADTOOLS

Example

This example shows the minimum requirements for using the L_EfxDrawFrame function to draw a frame with a palette.

L_INT EfxDrawFrameExample(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 frame */ 
  nRet = L_EfxDrawFrame(hdc,                     /* Device context */ 
                 pDest,                   /* Destination rectangle */ 
                 EFX_FRAME_OUTER_RAISED,  /* outer band raised */ 
                 2,                       /* middle band width*/ 
                 RGB ( 255,0,0 ),         /* middle band color */ 
                 2,                       /* inner band width*/ 
                 RGB ( 100,100,100 ),     /* inner band shadow color */ 
                 RGB ( 0,0,0 ),           /* inner band highlight color */ 
                 2,                       /* outer band width*/ 
                 RGB ( 128,128,128 ),     /* inner band shadow color */ 
                 RGB ( 255,255,0 ) );     /* inner band highlight color */ 
  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