Displays the Border Remove dialog box, and gets the options for L_BorderRemoveBitmap.
This function is available in the Document/Medical toolkits.
#include "l_bitmap.h"
L_LTDLG_API L_INT L_DlgBorderRemove(hWndOwner, pDlgParams)
Handle of the window which owns the dialog.
Pointer to a BORDERREMOVEDLGPARAMS structure to be updated with the values entered by the user, through the dialog. Set members of this structure, before calling this function, to set the dialogs initial values.
Value | Meaning |
---|---|
SUCCESS_DLG_OK | The "OK" button was pressed, and the dialog exited successfully. |
SUCCESS_DLG_CANCEL | The "Cancel" button was pressed, and the dialog exited successfully. |
< 1 | An error occurred. Refer to Return Codes. |
The L_BorderRemoveBitmap function only works with 1-bit images. If you provide a bitmap in the BORDERREMOVEDLGPARAMS structure, it must be a 1-bit bitmap.
L_INT ShowDlgBorderRemoveExample(HWND hWnd,pBITMAPHANDLE pBitmap)
{
L_INT nRet;
BORDERREMOVEDLGPARAMS DlgParams;
BITMAPHANDLE BitmapRegion;
memset ( &DlgParams, 0, sizeof ( BORDERREMOVEDLGPARAMS ) ) ;
memset ( &BitmapRegion, 0, sizeof ( BITMAPHANDLE ) ) ;
DlgParams.uStructSize = sizeof ( BORDERREMOVEDLGPARAMS ) ;
DlgParams.pBitmap = pBitmap ;
DlgParams.BorderRemove.uStructSize = sizeof ( BORDERREMOVE ) ;
DlgParams.BorderRemove.pBitmapRegion = &BitmapRegion ;
DlgParams.BorderRemove.uBitmapStructSize = sizeof ( BITMAPHANDLE );
DlgParams.BorderRemove.iBorderPercent = 1 ;
DlgParams.BorderRemove.iVariance = 2 ;
DlgParams.BorderRemove.iWhiteNoiseLength = 3 ;
DlgParams.BorderRemove.uBorderToRemove = BORDER_LEFT ;
DlgParams.BorderRemove.uFlags = BORDER_USE_VARIANCE ;
DlgParams.uDlgFlags = DLG_BORDERREMOVE_SHOW_PREVIEW |
DLG_BORDERREMOVE_SHOW_TOOL_ZOOMLEVEL;
nRet = L_DlgInit ( DLG_INIT_COLOR ) ;
if(nRet != SUCCESS && nRet != ERROR_DLG_ALREADYINITIATED)
return nRet;
nRet = L_DlgBorderRemove ( hWnd, &DlgParams ) ;
if(nRet < 1)
return nRet;
if(L_BitmapHasRgn(&BitmapRegion))
L_FreeBitmapRgn(&BitmapRegion);
nRet = L_DlgFree () ;
if(nRet != SUCCESS)
return nRet;
return SUCCESS;
} ;