/* LTIMG.H - image module header file Copyright (c) 1991-2000 LEAD Technologies, Inc. All Rights Reserved. */ #ifndef _LTIMG_H_ #define _LTIMG_H_ #include "ltkrn.h" #include "ltdis.h" #define _HEADER_ENTRY_ #include "ltpck.h" /*----------------L_EmbossBitmap Flags-----------------------*/ #define EMBOSS_N 0x0000 #define EMBOSS_NE 0x0001 #define EMBOSS_E 0x0002 #define EMBOSS_SE 0x0003 #define EMBOSS_S 0x0004 #define EMBOSS_SW 0x0005 #define EMBOSS_W 0x0006 #define EMBOSS_NW 0x0007 /*----------------L_GetHistogram, L_RemapBitmapIntensity, and L_AddNoiseBitmap Flags-----------------------*/ #define CHANNEL_MASTER 0x0000 /* All channels */ #define CHANNEL_RED 0x0001 /* Red channel only */ #define CHANNEL_GREEN 0x0002 /* Green channel only */ #define CHANNEL_BLUE 0x0003 /* Blue channel only */ #define HIST_ALL_BITS 0x0010 #define HIST_LOWHIGH_BITS 0x0000 /*----------------L_ColorSeparateBitmap/L_ColorMergeBitmap Flags-----------------------*/ #define COLORSEP_RGB 0x0000 /* Use 3 RGB color planes. */ #define COLORSEP_CMYK 0x0001 /* Use 4 CMYK color planes. */ #define COLORSEP_HSV 0x0002 /* Use 3 HSV color planes. */ #define COLORSEP_HLS 0x0003 /* Use 3 HLS color planes. */ #define COLORSEP_CMY 0x0004 /* Use 3 CMY color planes. */ #define COLORSEP_YUV 0x0005 /* Use 3 YUV color planes. */ #define COLORSEP_XYZ 0x0006 /* Use 3 XYZ color planes. */ #define COLORSEP_LAB 0x0007 /* Use 3 XYZ color planes. */ #define COLORSEP_YCrCb 0x0008 /* Use 3 YCrCb color planes. */ #define COLORSEP_SCT 0x0009 /* Use 3 SCT color planes. */ #define RGB_SPACE 0x0001 #define YUV_SPACE 0x0002 #define GRAY_SPACE 0x0004 #define SWAP_RG 0x0001 #define SWAP_RB 0x0002 #define SWAP_GB 0x0004 #define SWAP_RGBR 0x0008 #define SWAP_RBGR 0x0010 /*----------------L_ResizeBitmapRgn Flags-----------------------*/ #define RGN_EXPAND 0x0001 #define RGN_CONTRACT 0x0002 /*----------------L_CreateFadedMask Flags-----------------------*/ #define FADE_OUTER 0x0001 #define FADE_DUMPFILL 0x0002 #define FADE_FILLCOLOR_START 0x0004 #define FADE_WHITETOBLACK 0x0008 #define FADE_NOTRANSPARENCY 0x0010 #define FADE_TRANSPARENCY_DUMPCOLOR 0x0020 /*----------------L_CombineBitmapExt Flags-----------------------*/ #define CB_SRC_MASTER 0x00000000 #define CB_SRC_RED 0x00010000 #define CB_SRC_GREEN 0x00020000 #define CB_SRC_BLUE 0x00030000 #define CB_DST_MASTER 0x00000000 #define CB_DST_RED 0x00100000 #define CB_DST_GREEN 0x00200000 #define CB_DST_BLUE 0x00300000 #define CB_RES_MASTER 0x00000000 #define CB_RES_RED 0x01000000 #define CB_RES_GREEN 0x02000000 #define CB_RES_BLUE 0x03000000 #define CB_OP_ABSDIF 0x00000C00 /*----------------L_AddBitmaps and L_AddWeightedBitmaps Flags-----------------------*/ #define BC_AVG 0x0001 #define BC_ADD 0x0002 #define BC_AVGWEIGHTED 0x0003 #define BC_ADDWEIGHTED 0x0004 /*----------------L_AntiAliasBitmap Flags-----------------------*/ #define ANTIALIAS_1 0x0000 #define ANTIALIAS_2 0x0001 #define ANTIALIAS_3 0x0002 #define ANTIALIAS_DIAG 0x0003 #define ANTIALIAS_HORZ 0x0004 #define ANTIALIAS_VERT 0x0005 /*----------------L_EdgeDetectorBitmap Flags-----------------------*/ #define EDG_SOBEL_VERT 0x0101 #define EDG_SOBEL_HORZ 0x0102 #define EDG_SOBEL_ALL 0x0103 #define EDG_PREWITT_VERT 0x0201 #define EDG_PREWITT_HORZ 0x0202 #define EDG_PREWITT_ALL 0x0203 #define EDG_LAPLACE_1 0x0301 #define EDG_LAPLACE_2 0x0302 #define EDG_LAPLACE_3 0x0303 #define EDG_LAPLACE_DIAG 0x0304 #define EDG_LAPLACE_HORZ 0x0305 #define EDG_LAPLACE_VERT 0x0306 #define EDG_GRADIENT_N 0x0401 #define EDG_GRADIENT_NE 0x0402 #define EDG_GRADIENT_E 0x0403 #define EDG_GRADIENT_SE 0x0404 #define EDG_GRADIENT_S 0x0405 #define EDG_GRADIENT_SW 0x0406 #define EDG_GRADIENT_W 0x0407 #define EDG_GRADIENT_NW 0x0408 /*----------------L_GetFunctionalLookupTable Flags-----------------------*/ #define FLT_EXP 0x0000 #define FLT_LN 0x0001 #define FLT_LINEAR 0x0002 #define FLT_SIGMOID 0x0003 /*----------------L_HalfToneBitmap Flags-----------------------*/ #define HT_PRINT 0x0000 #define HT_VIEW 0x0001 #define HT_RECT 0x0002 #define HT_CIRC 0x0003 #define HT_ELLIPS 0x0004 #define HT_RAND 0x0005 #define HT_LINEAR 0x0006 #define HT_USERDEF 0x0007 /*----------------L_AddFrame Flags-----------------------*/ #define FRAME_QUALITY_LOW 0x0000 #define FRAME_QUALITY_HIGH 0x0001 #define FRAME_INSIDE 0x0000 #define FRAME_OUTSIDE 0x0001 /*----------------L_AddBorder Flags-----------------------*/ #define BORDER_INSIDE 0x0000 #define BORDER_OUTSIDE 0x0001 #define BORDER_STYLE_TRANSPARENT 0x0000 #define BORDER_STYLE_OPAQUE 0x0001 #define BORDER_STYLE_GRADIENT 0x0002 #define BORDER_STYLE_TILES 0x0003 #define BORDER_EFFECT_CURVEDIN 0x0001 #define BORDER_EFFECT_CURVEDOUT 0x0002 #define BORDER_EFFECT_RAISED 0x0003 #define BORDER_SHADOW_LEFT 0x0000 #define BORDER_SHADOW_RIGHT 0x0001 #define BORDER_SHADOW_SURROUND 0x0002 #define BORDER_GRAD_INSIDEOUT 0x0000 #define BORDER_GRAD_CENTEROUT 0x0001 #define BORDER_GRAD_CORNEROUT 0x0002 /*----------------L_CylendricalBitmap Flags-----------------------*/ #define CYL_HORZ 0x0000 #define CYL_VERT 0x0001 /*----------------L_BendingBitmap Flags-----------------------*/ #define BND_NORM 0x0000 #define BND_HORZ 0x0100 #define BND_VERT 0x0200 /*----------------L_PolarBitmap Flags-----------------------*/ #define CART_TO_POL 0x0000 #define POL_TO_CART 0x0010 /*----------------L_PixelateBitmap Flags-----------------------*/ #define PIX_MAX 0x0000 #define PIX_MIN 0x0001 #define PIX_AVR 0x0002 #define PIX_RECT 0x0010 #define PIX_RAD 0x0020 #define PIX_WFRQ 0x0100 #define PIX_WPER 0x0200 #define PIX_HFRQ 0x0400 #define PIX_HPER 0x0800 /*----------------L_GetCurvePoints Flags-----------------------*/ #define GUB_CURVE 0x0000 #define GUB_LINEAR 0x0001 /*----------------L_FreeHandWaveBitmap, L_RadWaveBitmap, and L_WaveBitmap Flags-----------------------*/ #define DIS_PER 0x0000 #define DIS_FRQ 0x0010 /*----------------L_FreeHandShearBitmap Flags-----------------------*/ #define SHR_HORZ 0x0000 #define SHR_VERT 0x0010 /*----------------L_WaveBitmap Flags-----------------------*/ #define WV_SIN 0x0000 #define WV_COS 0x0100 #define WV_SQUARE 0x0200 #define WV_TRIANG 0x0300 /*---------------- General Flags-----------------------*/ #define FILL_CLR 0x0000 #define FILL_RPT 0x0001 #define FILL_NOCHG 0x0002 #define FILL_ROT 0x0000 #define FILL_WOUTROT 0x0010 /*----------------L_PlaneBendBitmap, L_PlaneBitmap Flags-----------------------*/ #define PLANE_FILL_CLR 0x0001 #define PLANE_NO_CHG 0x0002 #define PLANE_LEFT 0x0010 #define PLANE_RIGHT 0x0020 #define PLANE_UP 0x0040 #define PLANE_DOWN 0x0080 /*----------------L_TunnelBitmap Flags-----------------------*/ #define TUN_FILL_CLR 0x0001 #define TUN_NO_CHG 0x0002 #define TUN_AXIS_WIDTH 0x0010 #define TUN_AXIS_HEIGHT 0x0020 /*----------------L_FreePlaneBendBitmap Flags-----------------------*/ #define FPB_HORZ 0x0010 #define FPB_VERT 0x0020 #define FPB_VRHZ 0x0030 /*----------------L_GlassEffectBitmap Flags-----------------------*/ #define GLASS_WFRQ 0x0001 #define GLASS_WPER 0x0002 #define GLASS_HFRQ 0x0010 #define GLASS_HPER 0x0020 /*-------------------L_CubismBitmap Flags-------------------------*/ #define CUB_BKG 0x0001 #define CUB_COLOR 0x0002 #define CUB_SQR 0x0010 #define CUB_RECT 0x0020 #define CUB_RAND 0x0100 #define CUB_ORNT 0x0200 /*------------------L_SampleTargetBitmap Flags-------------------*/ #define SAMP_RED 0x0001 #define SAMP_GREEN 0x0002 #define SAMP_BLUE 0x0003 #define SAMP_RGB 0x0004 #define SAMP_LOW 0x0010 #define SAMP_MID 0x0020 #define SAMP_HIGH 0x0030 /*------------------L_DeinterlaceBitmap -----------------------------*/ #define DEINTERLACE_NORMAL 0x0001 #define DEINTERLACE_SMOOTH 0x0002 #define DEINTERLACE_ODD 0x0010 #define DEINTERLACE_EVEN 0x0020 /*----------------L_LensFlareBitmap Flags-----------------------*/ #define LNS_TYPE_1 0x0000 #define LNS_TYPE_2 0x0001 #define LNS_TYPE_3 0x0002 /*----------------L_LightBitmap Flags-----------------------*/ #define LGT_SPOTLIGHT 0x0000 #define LGT_DIRELIGHT 0x0001 /*----------------L_DrawStarBitmap Flags-----------------------*/ #define STR_INSIDE 0x0000 #define STR_OUTSIDE 0x0001 #define STR_INNER 0x0010 /*---------------- Fourier Transform Flags-----------------------*/ #define FFT_FFT 0x00000001 #define FFT_IFFT 0x00000002 #define FFT_BLUE 0x00000010 #define FFT_GREEN 0x00000020 #define FFT_RED 0x00000030 #define FFT_GRAY 0x00000040 #define FFT_IFFT_MAG 0x00000100 #define FFT_IFFT_PHS 0x00000200 #define FFT_IFFT_BOTH 0x00000300 #define FFT_IFFT_CLIP 0x00001000 #define FFT_IFFT_SCL 0x00002000 #define DFT_DFT 0x00000001 #define DFT_IDFT 0x00000002 #define DFT_BLUE 0x00000010 #define DFT_GREEN 0x00000020 #define DFT_RED 0x00000030 #define DFT_GRAY 0x00000040 #define DFT_IDFT_MAG 0x00000100 #define DFT_IDFT_PHS 0x00000200 #define DFT_IDFT_BOTH 0x00000300 #define DFT_IDFT_CLIP 0x00001000 #define DFT_IDFT_SCL 0x00002000 #define DFT_ALL 0x00010000 #define DFT_RANGE 0x00020000 #define DFT_INSIDE_X 0x00100000 #define DFT_OUTSIDE_X 0x00200000 #define DFT_INSIDE_Y 0x01000000 #define DFT_OUTSIDE_Y 0x02000000 #define FRQ_INSIDE_X 0x00000001 #define FRQ_OUTSIDE_X 0x00000002 #define FRQ_INSIDE_Y 0x00000010 #define FRQ_OUTSIDE_Y 0x00000020 #define DSP_FT_MAG 0x00000001 #define DSP_FT_PHS 0x00000002 #define DSP_FT_NORM 0x00000010 #define DSP_FT_LOG 0x00000020 /*--------------L_GrayScaleToMultitone Flags---------------------*/ #define DT_MONOTONE 0x00000000 #define DT_DUOTONE 0x00000001 #define DT_TRITONE 0x00000002 #define DT_QUADTONE 0x00000003 #define DT_LINEAR 0x00000000 #define DT_USERDEFINE 0x00000001 #define RP_ORDEREDNORMAL 0x00000000 #define RP_ORDEREDINVERSE 0x00000001 #define DT_MIX 0x00000000 #define DT_REPLACE 0x00000001 /*--------------L_ColorLevelBitmap Flags---------------------*/ #define LEVEL_RED 0x00000001 #define LEVEL_GREEN 0x00000010 #define LEVEL_BLUE 0x00000100 #define LEVEL_MASTER 0x00001000 /*--------------L_AutoColorLevelBitmap Flags---------------------*/ #define AUTO_LEVEL 0x00000001 #define AUTO_CONTRAST 0x00000002 #define AUTO_INTENSITY 0x00000003 #define AUTO_NOPROCESS 0x00000004 #define DEFAULT_GAMMA 0x00000064 /* Equivalent to 1.0 (ie Divide by 100)*/ #define DEFAULT_BLACK_CLIP 0x00000032 /* Equivalent to 0.005 (ie Divide by 10000)*/ #define DEFAULT_WHITE_CLIP 0x00000032 /* Equivalent to 0.005 (ie Divide by 10000)*/ /*--------------L_SelectiveColorBitmap Flags---------------------*/ #define SELCLR_RED 0x00000000 #define SELCLR_YELLOW 0x00000001 #define SELCLR_GREEN 0x00000002 #define SELCLR_CYAN 0x00000003 #define SELCLR_BLUE 0x00000004 #define SELCLR_MAGENTA 0x00000005 #define SELCLR_WHITE 0x00000006 #define SELCLR_NEUTRAL 0x00000007 #define SELCLR_BLACK 0x00000008 /*--------------L_PicturizeBitmap Flags---------------------*/ #define PICTURIZE_LOADALL 0x0001 /* Load all files in memory */ #define PICTURIZE_RESIZE 0x0002 /* Resize all images that are not the required size */ #define PICTURIZE_RESAMPLE 0x0004 /* Resample all images that are not the required size */ #define PICTURIZE_ONCE 0x0010 /* Use the image only once thoughout the process */ #define PICTURIZE_EQUALUSAGE 0x0020 /* Use all images equally, i.e. before an image will be used twice all other images must be used at least once */ #define PICTURIZE_BESTFIT 0x0040 /* Images will be resized to fit the image if the bitmap width or height is not a multiple of nCellWidth/nCellHeight */ #define CONTOUR_THIN 0x0000 #define CONTOUR_LINK_BLACKWHITE 0x0001 #define CONTOUR_LINK_GRAY 0x0002 #define CONTOUR_LINK_COLOR 0x0003 #define CONTOUR_APPROX_COLOR 0x0004 #define DEFAULT_THRESHOLD 15 /* default for background threshold value */ #define DEFAULT_DELTADIRECTION 35 /* default for maximum angle for the thinning algorithm */ #define DEFAULT_MAXIMUMERROR 5 /* default for maximum approximation error */ /*-------------- Constants and Flags for Doc Imaging functions ---------------------*/ #define SMOOTH_BUMP 0x0000 #define SMOOTH_NICK 0x0001 #define SMOOTH_NONE 0x0002 #define SMOOTH_HORIZONTAL_ELEMENT 0x0000 #define SMOOTH_VERTICAL_ELEMENT 0x0001 #define SUCCESS_REMOVE 0x0001 #define SUCCESS_NOREMOVE 0x0002 #define LINEREMOVE_HORIZONTAL 0x0001 #define LINEREMOVE_VERTICAL 0x0002 #define SUCCESS_INVERT 0x0001 #define SUCCESS_NOINVERT 0x0002 #define BORDER_LEFT 0x0001 #define BORDER_RIGHT 0x0002 #define BORDER_TOP 0x0004 #define BORDER_BOTTOM 0x0008 #define BORDER_ALL (BORDER_LEFT | BORDER_RIGHT | BORDER_TOP | BORDER_BOTTOM) #define BORDER_DELTA_MAX (0xffffffff) /*-------------- flags for iLocation ---------------------*/ #define HOLEPUNCH_LEFT 0x0001 #define HOLEPUNCH_RIGHT 0x0002 #define HOLEPUNCH_TOP 0x0003 #define HOLEPUNCH_BOTTOM 0x0004 #define STAPLE_TOPLEFT 0x0001 #define STAPLE_TOPRIGHT 0x0002 #define STAPLE_BOTTOMLEFT 0x0003 #define STAPLE_BOTTOMRIGHT 0x0004 #define FLAG_USE_DPI 0x00000001 #define FLAG_SINGLE_REGION 0x00000002 #define FLAG_LEAD_REGION 0x00000004 #define FLAG_CALLBACK_REGION 0x00000008 #define FLAG_IMAGE_UNCHANGED 0x00000010 #define FLAG_USE_SIZE 0x00000020 #define FLAG_USE_COUNT 0x00000040 #define FLAG_USE_LOCATION 0x00000080 #define FLAG_FAVOR_LONG 0x00000100 #define FLAG_REMOVE_ENTIRE 0x00000200 #define FLAG_USE_GAP 0x00000400 #define FLAG_USE_VARIANCE 0x00000800 #define FLAG_USE_DIAGONALS 0x00001000 /*--------------L_DeskewBitmap Flags---------------------*/ #define DSKW_PROCESS 0x00000000 #define DSKW_NOPROCESS 0x00000001 #define DSKW_FILL 0x00000000 #define DSKW_NOFILL 0x00000010 #define DSKW_NOTHRESHOLD 0x00000000 #define DSKW_THRESHOLD 0x00000100 #define DSKW_LINEAR 0x00000000 #define DSKW_RESAMPLE 0x00001000 #define DSKW_BICUBIC 0x00002000 #define DSKW_DOCUMENTIMAGE 0x00000000 #define DSKW_DOCUMENTANDPICTURE 0x00010000 /*--------------L_SmoothBitmap Flags---------------------*/ #define SMOOTH_SINGLE_REGION (FLAG_SINGLE_REGION) #define SMOOTH_LEAD_REGION (FLAG_LEAD_REGION) #define SMOOTH_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define SMOOTH_FAVOR_LONG (FLAG_FAVOR_LONG) #define SMOOTH_ALLFLAGS ( \ SMOOTH_SINGLE_REGION | \ SMOOTH_LEAD_REGION | \ SMOOTH_IMAGE_UNCHANGED | \ SMOOTH_FAVOR_LONG \ ) /*--------------L_LineRemoveBitmap Flags---------------------*/ #define LINE_USE_DPI (FLAG_USE_DPI) #define LINE_SINGLE_REGION (FLAG_SINGLE_REGION) #define LINE_LEAD_REGION (FLAG_LEAD_REGION) #define LINE_CALLBACK_REGION (FLAG_CALLBACK_REGION) #define LINE_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define LINE_REMOVE_ENTIRE (FLAG_REMOVE_ENTIRE) #define LINE_USE_GAP (FLAG_USE_GAP) #define LINE_USE_VARIANCE (FLAG_USE_VARIANCE) #define LINE_ALLFLAGS ( \ LINE_USE_DPI | \ LINE_SINGLE_REGION | \ LINE_LEAD_REGION | \ LINE_CALLBACK_REGION | \ LINE_IMAGE_UNCHANGED | \ LINE_REMOVE_ENTIRE | \ LINE_USE_GAP | \ LINE_USE_VARIANCE \ ) /*--------------L_BorderRemoveBitmap Flags---------------------*/ #define BORDER_LEAD_REGION (FLAG_LEAD_REGION) #define BORDER_CALLBACK_REGION (FLAG_CALLBACK_REGION) #define BORDER_SINGLE_REGION (FLAG_SINGLE_REGION) #define BORDER_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define BORDER_USE_VARIANCE (FLAG_USE_VARIANCE) #define BORDER_ALLFLAGS ( \ BORDER_LEAD_REGION | \ BORDER_CALLBACK_REGION | \ BORDER_SINGLE_REGION | \ BORDER_IMAGE_UNCHANGED | \ BORDER_USE_VARIANCE \ ) /*--------------L_InvertedTextBitmap Flags---------------------*/ #define INVERTEDTEXT_USE_DPI (FLAG_USE_DPI) #define INVERTEDTEXT_SINGLE_REGION (FLAG_SINGLE_REGION) #define INVERTEDTEXT_LEAD_REGION (FLAG_LEAD_REGION) #define INVERTEDTEXT_CALLBACK_REGION (FLAG_CALLBACK_REGION) #define INVERTEDTEXT_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define INVERTEDTEXT_USE_DIAGONALS (FLAG_USE_DIAGONALS) #define INVERTEDTEXT_ALLFLAGS ( \ INVERTEDTEXT_USE_DPI | \ INVERTEDTEXT_SINGLE_REGION | \ INVERTEDTEXT_LEAD_REGION | \ INVERTEDTEXT_CALLBACK_REGION | \ INVERTEDTEXT_IMAGE_UNCHANGED | \ INVERTEDTEXT_USE_DIAGONALS \ ) /*--------------L_DotRemoveBitmap Flags---------------------*/ #define DOT_USE_DPI (FLAG_USE_DPI) #define DOT_SINGLE_REGION (FLAG_SINGLE_REGION) #define DOT_LEAD_REGION (FLAG_LEAD_REGION) #define DOT_CALLBACK_REGION (FLAG_CALLBACK_REGION) #define DOT_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define DOT_USE_SIZE (FLAG_USE_SIZE) #define DOT_USE_DIAGONALS (FLAG_USE_DIAGONALS) #define DOT_ALLFLAGS ( \ DOT_USE_DPI | \ DOT_SINGLE_REGION | \ DOT_LEAD_REGION | \ DOT_CALLBACK_REGION | \ DOT_IMAGE_UNCHANGED | \ DOT_USE_SIZE | \ DOT_USE_DIAGONALS \ ) /*--------------L_HolePunchRemoveBitmap Flags---------------------*/ #define HOLEPUNCH_USE_DPI (FLAG_USE_DPI) #define HOLEPUNCH_SINGLE_REGION (FLAG_SINGLE_REGION) #define HOLEPUNCH_LEAD_REGION (FLAG_LEAD_REGION) #define HOLEPUNCH_CALLBACK_REGION (FLAG_CALLBACK_REGION) #define HOLEPUNCH_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define HOLEPUNCH_USE_SIZE (FLAG_USE_SIZE) #define HOLEPUNCH_USE_COUNT (FLAG_USE_COUNT) #define HOLEPUNCH_USE_LOCATION (FLAG_USE_LOCATION) #define HOLEPUNCH_ALLFLAGS ( \ HOLEPUNCH_USE_DPI | \ HOLEPUNCH_SINGLE_REGION | \ HOLEPUNCH_LEAD_REGION | \ HOLEPUNCH_CALLBACK_REGION | \ HOLEPUNCH_IMAGE_UNCHANGED | \ HOLEPUNCH_USE_SIZE | \ HOLEPUNCH_USE_COUNT | \ HOLEPUNCH_USE_LOCATION \ ) /*--------------L_StapleRemoveBitmap Flags---------------------*/ #define STAPLE_USE_DPI (FLAG_USE_DPI) #define STAPLE_SINGLE_REGION (FLAG_SINGLE_REGION) #define STAPLE_LEAD_REGION (FLAG_LEAD_REGION) #define STAPLE_CALLBACK_REGION (FLAG_CALLBACK_REGION) #define STAPLE_IMAGE_UNCHANGED (FLAG_IMAGE_UNCHANGED) #define STAPLE_USE_SIZE (FLAG_USE_SIZE) #define STAPLE_USE_LOCATION (FLAG_USE_LOCATION) #define STAPLE_ALLFLAGS ( \ STAPLE_USE_DPI | \ STAPLE_SINGLE_REGION | \ STAPLE_LEAD_REGION | \ STAPLE_CALLBACK_REGION | \ STAPLE_IMAGE_UNCHANGED | \ STAPLE_USE_SIZE | \ STAPLE_USE_LOCATION \ ) /*--------------L_ConvertBitmapSignedToUnsigned Flags---------------------*/ #define SHIFT_ZERO_TO_CENTER 0x0000 #define SHIFT_MIN_TO_ZERO 0x0001 #define SHIFT_NEG_TO_ZERO 0x0002 #define SHIFT_RANGE_ONLY 0x0003 #define SHIFT_RANGE_PROCESS_OUTSIDE 0x0004 /*--------------L_ApplyLUTBitmap Flags---------------------*/ #define LUT_SIGNED 0x0001 /* The LUT entries are signed */ /*--------------L_SegmentBitmap Flags---------------------*/ #define SGM_RGB 0x00001 #define SGM_Y 0x00002 #define SGM_U 0x00003 #define SGM_V 0x00004 #define SGM_UV 0x00005 #define SGM_NGTV_UV 0x00010 /*--------------L_UserFilterBitmap Flags---------------------*/ #define UD_SUM 0x0000 #define UD_MAX 0x0001 #define UD_MIN 0x0002 /*--------------L_MathFunctionBitmap Flags---------------------*/ #define MF_SQR 0x0000 #define MF_LOG 0x0001 #define MF_SQRT 0x0002 #define MF_SIN 0x0003 #define MF_COS 0x0004 /*--------------L_ColorThresholdBitmap Flags---------------------*/ #define CLTH_TYP_BANDPASS 0x00000000 #define CLTH_TYP_BANDREJECT 0x00000001 #define CLTH_MOD_CHANNEL 0x00000000 #define CLTH_MOD_ALL 0x00000010 #define CLTH_VALUE_MIN 0x00000000 #define CLTH_VALUE_MAX 0x00000100 #define CLTH_VALUE_CLAMP 0x00000200 #define CLTH_RGB_SPACE 0x00000000 #define CLTH_HSV_SPACE 0x00000001 #define CLTH_HLS_SPACE 0x00000002 #define CLTH_XYZ_SPACE 0x00000003 #define CLTH_YCrCb_SPACE 0x00000004 #define CLTH_YUV_SPACE 0x00000005 #define CLTH_LAB_SPACE 0x00000006 #define CLTH_CMY_SPACE 0x00000007 /*--------------L_AddShadowBitmap Flags---------------------*/ #define SHADOW_E 0 #define SHADOW_NE 1 #define SHADOW_N 2 #define SHADOW_NW 3 #define SHADOW_W 4 #define SHADOW_SW 5 #define SHADOW_S 6 #define SHADOW_SE 7 #define SHADOW_CLR_RGB 0 #define SHADOW_CLR_GRAY 1 /*--------------L_SubtractBackgroundBitmap Flags---------------------*/ #define SBK_DEPEND 0 #define SBK_1_1 1 #define SBK_1_2 2 #define SBK_1_4 3 #define SBK_1_8 4 #define SBK_BG_DARK 0x00000000 #define SBK_BG_BRIGHT 0x00000001 #define SBK_RES_SHOW 0x00000000 #define SBK_BG_SHOW 0x00000010 /*-------------- L_ApplyModalityLUT, L_ApplyLinearModalityLUT flags-----------------------------*/ #define M_LUT_SIGNED 0x0001 //The LUT entries are signed #define M_LUT_UPDATE_MIN_MAX 0x0002 //Update MinVal,MaxVal inside the bitmap handle #define M_LUT_USE_FULL_RANGE 0x0004 // Do not mask the values in the LUT #define M_LUT_ALLOW_RANGE_EXPANSION 0x0008 // Allow the function to increase pBitmap->HighBit // (if needed) to be able to hold the data range after // applying modality LUT /*-------------- L_ApplyVOILUT,L_ApplyLinearVOILUT flags-----------------------------*/ #define VOI_LUT_UPDATE_MIN_MAX 0x0001 //Update MinVal,MaxVal inside the bitmap handle #define VOI_LUT_REVERSE_ORDER 0x0002 //Reverse ordered grayscale (light to dark). /*-------------- L_CountLUTColors flags-----------------------------*/ #define COUNT_LUT_UNSIGNED 0x0001 #define COUNT_LUT_SIGNED 0x0002 /*-------------- L_AgingBitmap Flags---------------------*/ #define AGING_ADD_NOTHING 0x0000 #define AGING_ADD_VSCRATCH 0x0001 #define AGING_ADD_HSCRATCH 0x0002 #define AGING_ADD_DUST 0x0004 #define AGING_ADD_PITS 0x0008 #define AGING_SCRATCH_INV 0x0000 #define AGING_SCRATCH_CLR 0x0010 #define AGING_DUST_INV 0x0000 #define AGING_DUST_CLR 0x0020 #define AGING_PITS_INV 0x0000 #define AGING_PITS_CLR 0x0040 /*-------------- L_AdaptiveContrastBitmap Flags---------------------*/ #define ACE_EXP 0x0001 #define ACE_LIN 0x0002 /*-------------- L_ApplyMathLogicBitmap Flags---------------------*/ #define AML_VALUE_NOP 0x00000000 #define AML_VALUE_NOT 0x00000010 #define AML_VALUE_0 0x00000020 #define AML_VALUE_1 0x00000030 #define AML_OP_AND 0x00000000 #define AML_OP_OR 0x00000100 #define AML_OP_XOR 0x00000200 #define AML_OP_ADD 0x00000300 #define AML_OP_SUBFACT 0x00000400 #define AML_OP_SUBVALUE 0x00000500 #define AML_OP_ABSDIF 0x00000600 #define AML_OP_MUL 0x00000700 #define AML_OP_DIVFACT 0x00000800 #define AML_OP_DIVVALUE 0x00000900 #define AML_OP_AVG 0x00000A00 #define AML_OP_MIN 0x00000B00 #define AML_OP_MAX 0x00000C00 #define AML_RES_NOP 0x00000000 #define AML_RES_NOT 0x00001000 #define AML_RES_0 0x00002000 #define AML_RES_1 0x00003000 /*-------------- L_EdgeDetectEffectBitmap Flags---------------------*/ #define EDGE_SOFT 0 #define EDGE_SOLID 1 /*---------------- L_FunctionalLightBitmap Flags-----------------------*/ #define FL_LINEAR_QUADRATIC 0x1000 #define FL_TRIGONOMETRY 0x2000 #define FL_FREEHAND 0x4000 #define FL_LINEAR_INNER 0x0001 #define FL_LINEAR_OUTER 0x0002 #define FL_QUADRATIC_INNER 0x0004 #define FL_QUADRATIC_OUTER 0x0008 #define FL_UNIDIRECTION 0x0010 #define FL_CIRCLES 0x0020 #define FL_ADD 0x0040 #define FL_MUL 0x0080 /*----------------L_PuzzleEffectBitmap Flags-----------------------*/ #define PUZZLE_BORDER 0x0001 #define PUZZLE_SHUFFLE 0x0002 #define PUZZLE_SIZE 0x0010 #define PUZZLE_COUNT 0x0020 /*---------------- L_RingEffectBitmap Flags-----------------------*/ #define RING_COLOR 0x0000 #define RING_REPEAT 0x0001 #define RING_NOCHANGE 0x0002 #define RING_FIXEDANGLE 0x0010 #define RING_RADIUS 0x0100 #define RING_MAXRADIUS 0x0200 /*----------------L_DiceEffectBitmap Flags-----------------------*/ #define DICE_SIZE 0x0010 #define DICE_COUNT 0x0020 #define DICE_BORDER 0x0001 #define BITMAP_RESIZE 0x0100 //Used for the above 3 functions. /*---------------- L_IntensityDetectBitmap Flags-----------------------*/ #define IDB_CHANNEL_MASTER 0x0000 #define IDB_CHANNEL_RED 0x0001 #define IDB_CHANNEL_GREEN 0x0010 #define IDB_CHANNEL_BLUE 0x0100 /*---------------- L_MultiScaleEnhancementBitmap Flags-----------------------*/ #define MSE_GAUSSIAN 0x0000 #define MSE_RESAMPLE 0x0001 #define MSE_BICUBIC 0x0002 #define MSE_NORMAL 0x0003 #define MSE_EDGEENH 0x0010 #define MSE_LATRED 0x0020 #define MSE_DEFAULT (L_UINT)-1 /*---------------- L_DigitalSubtractBitmap Flags-----------------------*/ #define DS_CONTRASTENH 0x0001 #define DS_OPTIMIZERANGE 0x0002 /*---------------- L_SearchRegMarksBitmap & L_IsRegMarkBitmap Flags-----------------------*/ #define RGS_T 0x0000 /*---------------- L_ApplyTransformationParameters Flags-----------------------*/ #define RGS_SIZE_NORMAL 0x0001 #define RGS_SIZE_RESAMPLE 0x0002 #define RGS_SIZE_BICUBIC 0x0003 #define RGS_SIZE_FAVORBLACK 0x0010 #define RGS_SIZE_FAVORWHITE 0x0020 /*---------------- L_ConvertBitmapUnsignedToSigned Flags-----------------------*/ #define PROCESS_RANGE_ONLY 0x0001 #define PROCESS_OUTSIDE_RANGE 0x0002 /*---------------- L_OffsetBitmap -----------------------------------*/ #define FILL_CLR 0x0000 #define FILL_RPT 0x0001 #define FILL_NOCHG 0x0002 #define FILL_WRAP 0x0003 /*---------------- L_CanvasBitmap -------------------------------*/ #define CANVAS_FIT 0x0000 #define CANVAS_SHIFT 0x0010 /*---------------- L_BricksTextureBitmap ------------------------*/ #define BRICKS_SOLID 0x0000 #define BRICKS_SMOOTHEDOUT 0x0001 #define BRICKS_SMOOTHEDIN 0x0002 #define BRICKS_TRANSPARENTMORTAR 0x0000 #define BRICKS_COLOREDMORTAR 0x0010 /*---------------- L_CloudsEffect ID's -----------------------*/ #define CLD_PURE 0x0000 #define CLD_DIFFERENCE 0x0001 #define CLD_OPACITY 0x0002 /*---------------- L_VignetteBitmap ID's -----------------------*/ #define VIG_SQUARE 0x0000 #define VIG_RECTANGLE 0x0001 #define VIG_CIRCLE 0x0002 #define VIG_ELLIPSE 0x0003 #define VIG_FILLIN 0x0000 #define VIG_FILLOUT 0x0010 /*---------------- L_MosaicTiles ID's -----------------------*/ #define MSCT_CART 0x0000 #define MSCT_POLAR 0x0001 #define MSCT_FLAT 0x0000 #define MSCT_SHADOWRGB 0x0010 #define MSCT_SHADOWGRAY 0x0020 /*---------------- L_RomanMosaic ID's -----------------------*/ #define RMN_RECT 0x0000 #define RMN_CIRC 0x0001 #define RMN_BOTH 0x0002 #define RMN_FLAT 0x0000 #define RMN_SHADOWRGB 0x0010 #define RMN_SHADOWGRAY 0x0020 /*---------------- Gamma Ext Data -----------------------*/ #define YUV_CHANNELS 3 #define KeepInRange8(n) min(max(n, 0), 255) #define KeepInRange16(n) min(max(n, 0), 65535) /*---------------- Plasma Data -----------------------*/ #define PLSCLR_HUE 0x0000 #define PLSCLR_RGB1 0x0010 #define PLSCLR_RGB2 0x0020 #define PLSCLR_CUST 0x0030 #define PLSTYP_VERTICAL 0x0000 #define PLSTYP_HORIZONTAL 0x0001 #define PLSTYP_DIAGONAL 0x0002 #define PLSTYP_CROSS 0x0003 #define PLSTYP_CIRCULAR 0x0004 #define PLSTYP_RANDOM1 0x0005 #define PLSTYP_RANDOM2 0x0006 #define PLSCLR_TEST 0x00F0 #define PLSTYP_TEST 0x000F #define PERCISION 100 /*---------------- Plasma Data -----------------------*/ #define MSKC_EMBOSS 0x0000 #define MSKC_EDGE 0x0001 #define MSKC_ESPLOTCH 0x0002 #define MSKC_SPLOTCH 0x0003 #define FIRST_LINE 0 #define FIRST_PIXEL 0 #define NO_LINE_READ -1000 #define EMBOSS_COEF 100.0 // Coefficient of Emboss, divide the matrix on this value #define ANGLE_COEF 100.0 // Coefficient for Angle to give it percision #define EMBOSS_BIAS8 128 // Bias of Emboss, add this value to resulted values #define EMBOSS_BIAS16 32768 #define EDGE_COEF 100.0 // Coefficient of Edge Detection, divide the matrix on this value #define ANGLE_COEF 100.0 // Coefficient for Angle to give it percision #define EDGE_BIAS 0 // Bias of Edge Detection, add this value to resulted values #define EMBOSS_SPLOTCH_COEF 100.0 // Coefficient of Edge Detection, divide the matrix on this value #define ANGLE_COEF 100.0 // Coefficient for Angle to give it percision #define EMBOSS_SPLOTCH_BIAS8 128 // Bias of Edge Detection, add this value to resulted values #define EMBOSS_SPLOTCH_BIAS16 32768 #define SPLOTCH_COEF 100.0 // Coefficient of Edge Detection, divide the matrix on this value #define ANGLE_COEF 100.0 // Coefficient for Angle to give it percision #define SPLOTCH_BIAS 0 // Bias of Edge Detection, add this value to resulted values /*---------------- L_DisplaceBitmap -----------------------*/ #define DSPL_TILE 0x0000 #define DSPL_STRETCH 0x0010 /*----------------L_ZigZagBitmap Flags-----------------------*/ #define ZG_RAD 0x0000 #define ZG_POND 0x0010 /*---------------- L_PerlinBitmap -----------------------*/ #define PRL_PURE 0x00 #define PRL_COMBINE 0x01 #define PRL_DIFFERENCE 0x02 #define PRL_CIRCLE 0x00 #define PRL_LINE 0x10 #define PRL_RANDOM 0x20 /*---------------- L_ColorBalls -----------------------*/ #define CLRBALLS_SHADING_SINGLE 0x0001 #define CLRBALLS_SHADING_LEFTRIGHT 0x0002 #define CLRBALLS_SHADING_TOPBOTTOM 0x0003 #define CLRBALLS_SHADING_CIRCULAR 0x0004 #define CLRBALLS_SHADING_ELLIPTICAL 0x0005 #define CLRBALLS_STICKER 0x0010 #define CLRBALLS_BALL 0x0020 #define CLRBALLS_IMAGE 0x0100 #define CLRBALLS_COLOR 0x0200 #define CLRBALLS_BALLCLR_MASK 0x1000 #define CLRBALLS_BALLCLR_OPACITY 0x2000 /*---------------- L_Perspective -----------------------*/ #define PERSPECTIVE_IMAGE 0x0001 #define PERSPECTIVE_COLOR 0x0002 /*---------------- L_Pointilist -----------------------*/ #define POINTILLIST_IMAGE 0x0001 #define POINTILLIST_COLOR 0x0002 #define POINTILLIST_STICKER 0x0010 #define POINTILLIST_POINT 0x0020 /*---------------- L_HalftonePattern -----------------------*/ #define HTPATTERN_DOT 0x0001 #define HTPATTERN_LINE 0x0002 #define HTPATTERN_CIRCLE 0x0003 #define HTPATTERN_ELLIPSE 0x0004 /*----------------- L_SliceBitmap Structure -----------------*/ #define SLC_DESKEW 0x0000 #define SLC_WITHOUTDESKEW 0x0001 #define SLC_DSKW_LINEAR 0x00000000 #define SLC_DSKW_RESAMPLE 0x00000010 #define SLC_DSKW_BICUBIC 0x00000020 #define SLC_WITHOUTCUT 0x0000 #define SLC_CUTSLICES 0x0100 /*********************** L_SelectiveColorBitmap Structure ***********************/ #define BFLT_DONTCARE 256 #if !defined(FOR_DOTNET) typedef struct tagSELCLRINF { L_CHAR cCyan; L_CHAR cMagenta; L_CHAR cYellow; L_CHAR cBlack; } SELCLRINF, L_FAR * pSELCLRINF; typedef struct tagSELCLR { L_UINT uStructSize; SELCLRINF selClrs[9]; } SELCLR, L_FAR * pSELCLR; /*********************** L_ColorLevelBitmap and L_AutoColorLevelBitmap Structure***********************/ /*-------------- Internal structure for LVLCLR structure ---------------------*/ typedef struct tagLVLCLRINF { L_UINT uMinInput; L_UINT uMaxInput; L_UINT uMinOutput; L_UINT uMaxOutput; L_UINT uGamma; // This is value represent a double. // It should be 100 times the real gamma value. } LVLCLRINF, L_FAR * pLVLCLRINF; typedef struct tagLVLCLR { L_UINT uStructSize; LVLCLRINF master; LVLCLRINF red; LVLCLRINF green; LVLCLRINF blue; } LVLCLR, L_FAR * pLVLCLR; /*********************** L_BalanceColors Structure***********************/ typedef struct tagBALANCING { L_UINT uStructSize; L_DOUBLE toRed; L_DOUBLE toGreen; L_DOUBLE toBlue; } BALANCING, L_FAR *pBALANCING; /*********************** L_AddFrame Structure***********************/ typedef struct _ADDFRAMEINFO { L_UINT uStructSize; pBITMAPHANDLE pBitmapFrame; L_BOOL bKeepFrameState; L_BOOL bUseMask; COLORREF crMask; BYTE SmoothEdge; L_INT nLocation; L_INT nQuality; } ADDFRAMEINFO, L_FAR * LPADDFRAMEINFO; /*********************** L_AddBorder Structure***********************/ typedef struct _ADDBORDERINFO { L_UINT uStructSize; L_INT nLeftThickness; L_INT nTopThickness; L_INT nRightThickness; L_INT nBottomThickness; L_INT nLocation; L_INT nStyle; L_INT nEffectStyle; pBITMAPHANDLE pTileBitmap; L_INT nGradientStyle; COLORREF crGradientStart; COLORREF crGradientEnd; L_INT nCurveIntensity; L_BOOL bSoftCurve; L_BOOL bShadow; L_INT nShadowSize; L_INT nShadowDirection; L_BOOL bBumpyShadow; } ADDBORDERINFO, L_FAR * LPADDBORDERINFO; /*********************** L_AddMessageToBitmap and L_ExtractMessageFromBitmap Structure***********************/ typedef struct _ADDMESGINFO { L_UINT uStructSize; L_TCHAR L_FAR * pStrMsg; L_UCHAR L_FAR * pPassword; L_TCHAR L_FAR * pFileName; L_TCHAR L_FAR * pDirectory; LPPOINT pStart; } ADDMESGINFO, L_FAR * LPADDMESGINFO; /*********************** L_BinaryfilterBitmap Structure***********************/ typedef struct tagBINARYFLT { L_UINT uStructSize; L_BOOL bfltMax; /* select maximimum value */ L_UINT bfltDim; /* filter dimensions */ L_INT bfltMatrix[1]; /* array of filter coefficients */ } BINARYFLT, L_FAR * LPBINARYFLT; /*********************** L_BumpMapBitmap Structure***********************/ typedef struct tagBUMPDATA { L_UINT uStructSize; L_INT nAzimuth; L_UINT uElevation; L_UINT uDepth; L_INT nXOffset; L_INT nYOffset; L_INT nXDst; L_INT nYDst; L_BOOL bTile; L_INT nBright; L_INT nIntensity; L_UINT L_FAR * pLut; } BUMPDATA, L_FAR * LPBUMPDATA; /*********************** L_LightBitmap Structure***********************/ typedef struct _LIGHTINFO { L_UINT uStructSize; POINT ptCenter; L_UINT uWidth; L_UINT uHeight; L_INT nAngle; L_UINT uBright; L_UINT uEdge; COLORREF crFill; L_UINT uOpacity; L_UINT uFlag; } LIGHTINFO, L_FAR * LPLIGHTINFO; /*********************** L_DrawStarBitmap Structure***********************/ typedef struct _STARINFO { L_UINT uStructSize; POINT pCenter; L_UINT uSpoke; L_UINT uStarWidth; L_UINT uStarHeight; L_UINT uHoleSize; L_INT nPhase; L_INT nAngle; L_INT nDistOpac; L_INT nSpokeDiv; L_INT nAngleOpac; L_INT nBorderOpac; COLORREF crFillLower; COLORREF crFillUpper; L_UINT uOpacity; L_UINT uFlag; } STARINFO, L_FAR * LPSTARINFO; /*********************** FT functions Structure***********************/ typedef struct tagCOMPLEX { L_DOUBLE r; L_DOUBLE i; }L_COMPLEX, L_FAR * LPCOMPLEX; typedef struct tagFTARRAY { L_UINT uStructSize; L_UINT uWidth; L_UINT uHeight; L_COMPLEX acxData[1]; } FTARRAY, L_FAR* pFTARRAY; /*********************** L_ChannelMix Structure***********************/ typedef struct tagCOLORDATA { L_UINT uStructSize; L_INT nRedFactor; L_INT nGreenFactor; L_INT nBlueFactor; L_INT nConstant; } COLORDATA, L_FAR * pCOLORDATA; /*********************** L_SpatialFilterBitmap Structure***********************/ typedef struct tagSPATIALFLT { L_UINT uStructSize; L_INT fltDivisor; /* sum divisor */ L_INT fltBias; /* sum bias */ L_UINT fltDim; /* filter dimensions */ L_INT fltMatrix[1]; /* array of filter coefficients */ } SPATIALFLT, L_FAR * LPSPATIALFLT; /*********************** L_SmoothBitmap Structure***********************/ typedef struct tagSMOOTH { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iLength; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; } SMOOTH, L_FAR *LPSMOOTH; /*********************** L_HolePunchRemoveBitmap Structure***********************/ typedef struct tagHOLEPUNCH { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinHoleCount; L_INT32 iMaxHoleCount; L_INT32 iMinHoleWidth; L_INT32 iMinHoleHeight; L_INT32 iMaxHoleWidth; L_INT32 iMaxHoleHeight; L_INT32 iLocation; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; } HOLEPUNCH, L_FAR * LPHOLEPUNCH; /*********************** L_StapleRemoveBitmap Structure***********************/ typedef struct tagSTAPLE { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinLength; L_INT32 iMaxLength; L_INT32 iLocation; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; } STAPLE, L_FAR * LPSTAPLE; /*********************** L_DotRemoveBitmap Structure***********************/ typedef struct tagDOTREMOVE { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinDotWidth; L_INT32 iMinDotHeight; L_INT32 iMaxDotWidth; L_INT32 iMaxDotHeight; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; } DOTREMOVE, L_FAR *LPDOTREMOVE; /*********************** L_InvertedTextBitmap Structure***********************/ typedef struct tagINVERTEDTEXT { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinInvertWidth; L_INT32 iMinInvertHeight; L_INT32 iMinBlackPercent; L_INT32 iMaxBlackPercent; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; } INVERTEDTEXT, L_FAR *LPINVERTEDTEXT; /*********************** L_BorderRemoveBitmap Structure***********************/ typedef struct tagBORDERREMOVE { L_UINT uStructSize; L_UINT32 uFlags; L_UINT32 uBorderToRemove; L_INT32 iBorderPercent; L_INT32 iWhiteNoiseLength; L_INT32 iVariance; HRGN hRgn; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; } BORDERREMOVE, L_FAR *LPBORDERREMOVE; /*********************** L_LineRemoveBitmap Structure***********************/ typedef struct tagLINEREMOVE { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinLineLength; L_INT32 iMaxLineWidth; L_INT32 iWall; L_INT32 iMaxWallPercent; L_INT32 iGapLength; L_INT32 iVariance; L_UINT32 uRemoveFlags; HRGN hRgn; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; } LINEREMOVE, L_FAR *LPLINEREMOVE; /*********************** L_ColorReplaceBitmap Structure***********************/ typedef struct _COLORREPLACE { L_UINT uStructSize; COLORREF crColor; L_UINT uFuzziness; } COLORREPLACE, L_FAR *LPCOLORREPLACE; /*********************** L_ChangeHueSatIntBitmap Structure***********************/ typedef struct tagHSIDATA { L_UINT uStructSize; L_INT nHue; L_INT nSaturation; L_INT nIntensity; L_INT nOuterLow; L_INT nOuterHigh; L_INT nInnerLow; L_INT nInnerHigh; } HSIDATA, L_FAR * LPHSIDATA; /*********************** L_GetBitmapStatisticsInfo Structure***********************/ typedef struct _STATISTICSINFO { L_UINT uStructSize; L_UINT uStdDev; L_UINT uMean; L_UINT uMedian; L_UINT uMax; L_UINT uMin; L_UINT uPixelCnt; L_UINT uTotalPixelCnt; L_UINT uPercent; } STATISTICSINFO, L_FAR *LPSTATISTICSINFO; /*********************** L_UserFilterBitmap Structure***********************/ typedef struct tagUSERFLT { L_UINT uStructSize; L_UINT ufltWidth; L_UINT ufltHeight; POINT ufltCenter; L_UINT ufltDivisor; L_INT nfltOffset; L_UINT ufltFlag; L_INT ufltMatrix[1]; } USERFLT, L_FAR * LPUSERFLT; /*********************** L_ColorThresholdBitmap Structure***********************/ typedef struct tagCOMPDATA { L_UINT uStructSize; L_INT nMinRange; L_INT nMaxRange; L_UINT uFlags; } COMPDATA, L_FAR * LPCOMPDATA; /*********************** L_ColorIntensityBalance Structure***********************/ typedef struct tagBALANCEDATA { L_UINT uStructSize; L_INT nRed; L_INT nGreen; L_INT nBlue; } BALANCEDATA, L_FAR * LPBALANCEDATA; /*********************** L_FunctionalLightBitmap Structure***********************/ typedef struct tagLIGHTPARAMS { L_UINT uStructSize; L_UINT uFreq; L_UINT uRAmp; L_UINT uGAmp; L_UINT uBAmp; L_INT nAngle; L_UINT uXOrigin; L_UINT uYOrigin; L_INT nPhase; L_INT L_FAR * pBuff; L_UINT uBuffCount; L_UINT uFlags; }LIGHTPARAMS, L_FAR * LPLIGHTPARAMS; /*********************** L_ColorizeGrayBitmap Structure***********************/ #if defined(LT_USE_RENAMED_STRUCT) typedef struct tagLTGRAYCOLOR { L_UINT uStructSize; RGBQUAD crColor; L_UINT uThreshold; } LTGRAYCOLOR, L_FAR * pLTGRAYCOLOR; #else typedef struct tagGRAYCOLOR { L_UINT uStructSize; RGBQUAD crColor; L_UINT uThreshold; } GRAYCOLOR, L_FAR * pGRAYCOLOR; #endif /*********************** L_SearchRegMarksBitmap Structure***********************/ typedef struct tagSEARCHMARKS { L_UINT uStructSize; L_UINT uType; L_UINT uWidth; L_UINT uHeight; L_UINT uMinScale; L_UINT uMaxScale; RECT rcRect; L_UINT uSearchMarkCount; POINT L_FAR * pMarkDetectedPoints; L_UINT uMarkDetectedCount; } SEARCHMARKS, L_FAR * LPSEARCHMARKS; /*********************** L_SliceBitmap Structure***********************/ typedef struct _SLICEBITMAPOPTIONS { L_UINT uStructSize; L_UINT uMaxDeskewAngle; L_INT crFill; L_INT uFlags; } SLICEBITMAPOPTIONS, *pSLICEBITMAPOPTIONS; /*-----------------L_BinaryFilterBitmap Flags, Macros, -------------------*/ #define BINARYFLTSIZE(dim) (sizeof(BINARYFLT) + (sizeof(L_INT) * (((L_INT) (dim) * (L_INT) (dim)) - 1))) #define MAKEINTBFLT(i) ((LPBINARYFLT)((L_UINT32)((L_UINT16) (i)))) #define BFLT_EROSION_OMNI MAKEINTBFLT(0) #define BFLT_EROSION_HORZ MAKEINTBFLT(1) #define BFLT_EROSION_VERT MAKEINTBFLT(2) #define BFLT_EROSION_DIAG MAKEINTBFLT(3) #define BFLT_DILATION_OMNI MAKEINTBFLT(4) #define BFLT_DILATION_HORZ MAKEINTBFLT(5) #define BFLT_DILATION_VERT MAKEINTBFLT(6) #define BFLT_DILATION_DIAG MAKEINTBFLT(7) /*-----------------L_SpatialFilterBitmap Flags, Macros, -------------------*/ #define SPATIALFLTSIZE(dim) (sizeof(SPATIALFLT) + (sizeof(L_INT) * (((L_INT) (dim) * (L_INT) (dim)) - 1))) #define MAKEINTFLT(i) ((LPSPATIALFLT)((L_UINT32)((L_UINT16) (i)))) #define FLT_EMBOSS_N MAKEINTFLT(0) #define FLT_EMBOSS_NE MAKEINTFLT(1) #define FLT_EMBOSS_E MAKEINTFLT(2) #define FLT_EMBOSS_SE MAKEINTFLT(3) #define FLT_EMBOSS_S MAKEINTFLT(4) #define FLT_EMBOSS_SW MAKEINTFLT(5) #define FLT_EMBOSS_W MAKEINTFLT(6) #define FLT_EMBOSS_NW MAKEINTFLT(7) #define FLT_GRADIENT_N MAKEINTFLT(8) #define FLT_GRADIENT_NE MAKEINTFLT(9) #define FLT_GRADIENT_E MAKEINTFLT(10) #define FLT_GRADIENT_SE MAKEINTFLT(11) #define FLT_GRADIENT_S MAKEINTFLT(12) #define FLT_GRADIENT_SW MAKEINTFLT(13) #define FLT_GRADIENT_W MAKEINTFLT(14) #define FLT_GRADIENT_NW MAKEINTFLT(15) #define FLT_LAPLACE_1 MAKEINTFLT(16) #define FLT_LAPLACE_2 MAKEINTFLT(17) #define FLT_LAPLACE_3 MAKEINTFLT(18) #define FLT_LAPLACE_DIAG MAKEINTFLT(19) #define FLT_LAPLACE_HORZ MAKEINTFLT(20) #define FLT_LAPLACE_VERT MAKEINTFLT(21) #define FLT_SOBEL_HORZ MAKEINTFLT(22) #define FLT_SOBEL_VERT MAKEINTFLT(23) #define FLT_PREWITT_HORZ MAKEINTFLT(24) #define FLT_PREWITT_VERT MAKEINTFLT(25) #define FLT_SHIFTDIFF_DIAG MAKEINTFLT(26) #define FLT_SHIFTDIFF_HORZ MAKEINTFLT(27) #define FLT_SHIFTDIFF_VERT MAKEINTFLT(28) #define FLT_LINESEG_HORZ MAKEINTFLT(29) #define FLT_LINESEG_VERT MAKEINTFLT(30) #define FLT_LINESEG_LTOR MAKEINTFLT(31) #define FLT_LINESEG_RTOL MAKEINTFLT(32) typedef L_INT (pEXT_CALLBACK BITMAPSLICECALLBACK) (pBITMAPHANDLE pBitmap, LPRECT lpSliceRect, L_INT nAngle, L_VOID L_FAR * pUserData); /*----------------------------------- callback typedefs --------------------------------------*/ typedef L_INT (pEXT_CALLBACK PICTURIZECALLBACK)(pBITMAPHANDLE, L_INT, L_INT, L_VOID L_FAR *); typedef L_INT (pEXT_CALLBACK SMOOTHCALLBACK) ( L_UINT32 uBumpOrNick, L_INT32 iStartRow, L_INT32 iStartCol, L_INT32 iLength, L_UINT32 uHorV, L_VOID L_FAR *pUserData ); typedef L_INT (pEXT_CALLBACK LINEREMOVECALLBACK) ( HRGN hRgn, L_INT32 iStartRow, L_INT32 iStartCol, L_INT32 iLength, L_VOID L_FAR *pUserData ); typedef L_INT (pEXT_CALLBACK BORDERREMOVECALLBACK) ( HRGN hRgn, L_UINT32 uBorderToRemove, PRECT pBoundingRect, L_VOID L_FAR *pUserData ); typedef L_INT (pEXT_CALLBACK INVERTEDTEXTCALLBACK) ( HRGN hRgn, PRECT pBoundingRect, L_INT32 iWhiteCount, L_INT32 iBlackCount, L_VOID L_FAR *pUserData ); typedef L_INT (pEXT_CALLBACK DOTREMOVECALLBACK) ( HRGN hRgn, PRECT pBoundingRect, L_INT32 iWhiteCount, L_INT32 iBlackCount, L_VOID L_FAR *pUserData ); typedef L_INT (pEXT_CALLBACK HOLEPUNCHREMOVECALLBACK) ( HRGN hRgn, PRECT pBoundingRect, L_INT32 iHoleIndex, L_INT32 iHoleTotalCount, L_INT32 iWhiteCount, L_INT32 iBlackCount, L_VOID L_FAR *pUserData ); typedef L_INT (pEXT_CALLBACK STAPLEREMOVECALLBACK) ( HRGN hRgn, PRECT pBoundingRect, L_UINT32 iWhiteCount, L_UINT32 iBlackCount, L_VOID L_FAR *pUserData ); /*----------------------------------- callback typedefs --------------------------------------*/ typedef L_INT (pEXT_CALLBACK PICTURIZECALLBACK) (pBITMAPHANDLE, L_INT, L_INT, L_VOID L_FAR *); /*---------------- L_VignetteBitmap ID's -----------------------*/ typedef struct _tagVIGNETTEINFO { L_UINT uStructSize; // The size of the structure. POINT ptCenter; // Center for the Vignette object. L_INT nFading; // Fading percentage (0 - 100). L_UINT uFadingRate; // power of fading . L_UINT uWidth; // Width for Squares,Rectangles, and Ellipses. L_UINT uHeight; // Height for Squares,Rectangles, and Ellipses. COLORREF crVigColor; // The color used. L_UINT uFlags; // Vignette Types. }VIGNETTEINFO,L_FAR * LPVIGNETTEINFO; /*---------------- L_MosaicTiles ID's -----------------------*/ typedef struct _tagMOSAICTILESINFO { L_UINT uStructSize; //The size of the structure. L_UINT uOpacity; //Opacity between the image and the enterd color. L_UINT uPenWidth; //Pen width. L_UINT uTileWidth; //Block Width in cartesian case. L_UINT uTileHeight; //Block Height in cartesian case. POINT ptCenter; //Center point for the polar coordinates system. L_UINT uFlags; //Flags L_UINT uShadowAngle; //Shadow Angle. L_UINT uShadowThreshold; //Shadow Threshold. COLORREF crBorderColor; //Border color. COLORREF crTilesColor; //Tile color. }MOSAICTILESINFO,L_FAR * LPMOSAICTILESINFO; /*---------------- Mask Convolution Data -----------------------*/ typedef struct __MyPOINT { L_INT nXPos; L_INT nYPos; L_INT * nPreValues; } MyPOINT, L_FAR * pMyPOINT; typedef struct __KERNELINFO { pMyPOINT pPoint; L_INT nCntr; } KERNELINFO, L_FAR * pKERNELINFO; /*---------------- Plasma Data -----------------------*/ typedef struct tagPLASMAINFO { L_UINT uStructSize; L_UINT uRedFreq; L_UINT uGreenFreq; L_UINT uBlueFreq; L_UINT uOpacity; L_UINT uShift; L_UINT uSize; L_UINT uFlags; } PLASMAINFO, L_FAR * LPPLASMAINFO; typedef struct __MHBRGB { L_UINT uRed; L_UINT uGreen; L_UINT uBlue; } MHBRGB, L_FAR * LPMHBRGB; typedef struct __MHBHSV { L_DOUBLE dHue; L_DOUBLE dSat; L_DOUBLE dVal; } MHBHSV, L_FAR * LPMHBHSV; #else /*********************** L_BalanceColors Structure***********************/ private __value struct BALANCING { L_UINT uStructSize; L_DOUBLE toRed; L_DOUBLE toGreen; L_DOUBLE toBlue; }; /*********************** L_FunctionalLightBitmap Structure ***********************/ private __value struct LIGHTPARAMS { L_UINT uStructSize; L_UINT uFreq; L_UINT uRAmp; L_UINT uGAmp; L_UINT uBAmp; L_INT nAngle; L_UINT uXOrigin; L_UINT uYOrigin; L_INT nPhase; L_INT pBuff L__GC[]; L_UINT uBuffCount; L_UINT uFlags; }; /*********************** L_SelectiveColorBitmap Structure ***********************/ private __value struct SELCLRINF { L_INT16 cCyan; L_INT16 cMagenta; L_INT16 cYellow; L_INT16 cBlack; }; typedef SELCLRINF L_FAR * pSELCLRINF; private __value struct SELCLR { SELCLRINF selClrs[]; SELCLR() { selClrs = new SELCLRINF[9]; } }; typedef SELCLR L_FAR * pSELCLR; /******************** L_ColorizeGeayBitmap ****************************/ private __value struct GRAYCOLOR { Leadtools::Kernel::RgbQuad crColor; L_UINT uThreshold; }; typedef GRAYCOLOR * pGRAYCOLOR; /****************** L_ColorLevelBitmap ******************************/ private __value struct LVLCLRINF { L_UINT uMinInput; L_UINT uMaxInput; L_UINT uMinOutput; L_UINT uMaxOutput; L_UINT uGamma; }; typedef LVLCLRINF * pLVLCLRINF; private __value struct LVLCLR { LVLCLRINF master; LVLCLRINF red; LVLCLRINF green; LVLCLRINF blue; }; typedef LVLCLR * pLVLCLR; /*********************** L_ChannelMix Structure***********************/ __value struct COLORDATA { L_UINT uStructSize; L_INT nRedFactor; L_INT nGreenFactor; L_INT nBlueFactor; L_INT nConstant; }; /*********************** L_ColorThresholdBitmap Structure***********************/ __value struct COMPDATA { L_UINT uStructSize; L_INT nMinRange; L_INT nMaxRange; L_UINT uFlags; }; /*********************** L_BumpBitmap Structure***********************/ __value struct BUMPDATA { L_UINT uStructSize; L_INT nAzimuth; L_UINT uElevation; L_UINT uDepth; L_INT nXOffset; L_INT nYOffset; L_INT nXDst; L_INT nYDst; L_BOOL bTile; L_INT nBright; L_INT nIntensity; L_UINT pLut L__GC[]; }; /*********************** L_LightBitmap Structure***********************/ __value struct LIGHTINFO { L_UINT uStructSize; POINT ptCenter; L_UINT uWidth; L_UINT uHeight; L_INT nAngle; L_UINT uBright; L_UINT uEdge; COLORREF crFill; L_UINT uOpacity; L_UINT uFlag; }; /*********************** L_DrawStarBitmap Structure***********************/ __value struct STARINFO { L_UINT uStructSize; POINT pCenter; L_UINT uSpoke; L_UINT uStarWidth; L_UINT uStarHeight; L_UINT uHoleSize; L_INT nPhase; L_INT nAngle; L_INT nDistOpac; L_INT nSpokeDiv; L_INT nAngleOpac; L_INT nBorderOpac; COLORREF crFillLower; COLORREF crFillUpper; L_UINT uOpacity; L_UINT uFlag; } ; /*********************** FT Structures***********************/ __value struct L_COMPLEX { L_DOUBLE r; L_DOUBLE i; }; typedef L_COMPLEX * LPCOMPLEX; __value struct FTARRAY { L_UINT uStructSize; L_UINT uWidth; L_UINT uHeight; L_COMPLEX acxData L__GC[]; }; typedef FTARRAY * pFTARRAY; /*********************** L_UserFilterBitmap Structure***********************/ __value struct USERFLT { L_UINT uStructSize; L_UINT ufltWidth; L_UINT ufltHeight; POINT ufltCenter; L_UINT ufltDivisor; L_INT nfltOffset; L_UINT ufltFlag; L_INT ufltMatrix L__GC[]; }; /*********************** L_ColorReplaceBitmap Structure***********************/ __value struct COLORREPLACE { L_UINT uStructSize; COLORREF crColor; L_UINT uFuzziness; } ; /*********************** L_ChangeHueSatIntBitmap Structure***********************/ __value struct HSIDATA { L_UINT uStructSize; L_INT nHue; L_INT nSaturation; L_INT nIntensity; L_INT nOuterLow; L_INT nOuterHigh; L_INT nInnerLow; L_INT nInnerHigh; }; /*********************** L_ColorIntensityBalance Structure***********************/ __value struct BALANCEDATA { L_UINT uStructSize; L_INT nRed; L_INT nGreen; L_INT nBlue; }; __value struct STATISTICSINFO { L_UINT uStructSize; L_UINT uStdDev; L_UINT uMean; L_UINT uMedian; L_UINT uMax; L_UINT uMin; L_UINT uPixelCnt; L_UINT uTotalPixelCnt; L_UINT uPercent; }; #define LPSTATISTICSINFO STATISTICSINFO* /*********************** L_SpatialFilterBitmap Structure***********************/ private __gc class SPATIALFLT { public: L_UINT uStructSize; L_INT fltDivisor; L_INT fltBias; L_UINT fltDim; L_INT fltMatrix L__GC[]; SPATIALFLT(L_INT nDim) { uStructSize = 0; fltDivisor = 0; fltBias = 0; fltDim = 0; fltMatrix = new L_INT L__GC[nDim]; } SPATIALFLT(L_UINT size, L_INT div, L_INT bias, L_UINT dim, L_INT m1, L_INT m2, L_INT m3, L_INT m4, L_INT m5, L_INT m6, L_INT m7, L_INT m8, L_INT m9) { uStructSize = size; fltDivisor = div; fltBias = bias; fltDim = dim; fltMatrix = new L_INT L__GC[9]; fltMatrix[0] = m1; fltMatrix[1] = m2; fltMatrix[2] = m3; fltMatrix[3] = m4; fltMatrix[4] = m5; fltMatrix[5] = m6; fltMatrix[6] = m7; fltMatrix[7] = m8; fltMatrix[8] = m9; } }; typedef SPATIALFLT * LPSPATIALFLT; /*********************** L_BinaryFilterBitmap Structure***********************/ private __gc class BINARYFLT { public: L_UINT uStructSize; L_BOOL bfltMax; L_UINT bfltDim; L_INT bfltMatrix L__GC[]; BINARYFLT(L_INT nDim) { uStructSize = 0; bfltMax = 0; bfltDim = 0; bfltMatrix = new L_INT L__GC[nDim]; } BINARYFLT(L_UINT size, L_BOOL fltMax, L_UINT dim, L_INT m1, L_INT m2, L_INT m3, L_INT m4, L_INT m5, L_INT m6, L_INT m7, L_INT m8, L_INT m9) { uStructSize = size; bfltMax = fltMax; bfltDim = dim; bfltMatrix = new L_INT L__GC[9]; bfltMatrix[0] = m1; bfltMatrix[1] = m2; bfltMatrix[2] = m3; bfltMatrix[3] = m4; bfltMatrix[4] = m5; bfltMatrix[5] = m6; bfltMatrix[6] = m7; bfltMatrix[7] = m8; bfltMatrix[8] = m9; } }; typedef BINARYFLT * LPBINARYFLT; //////////////////////////////////////////////////////////////our add /*-----------------L_BinaryFilterBitmap Flags, Macros, -------------------*/ //#define BINARYFLTSIZE(dim) (sizeof(BINARYFLT) + (sizeof(L_INT) * (((L_INT) (dim) * (L_INT) (dim)) - 1))) #define MAKEINTBFLT(i) ((LPBINARYFLT)((L_UINT32)((L_UINT16) (i)))) #define BFLT_EROSION_OMNI MAKEINTBFLT(0) #define BFLT_EROSION_HORZ MAKEINTBFLT(1) #define BFLT_EROSION_VERT MAKEINTBFLT(2) #define BFLT_EROSION_DIAG MAKEINTBFLT(3) #define BFLT_DILATION_OMNI MAKEINTBFLT(4) #define BFLT_DILATION_HORZ MAKEINTBFLT(5) #define BFLT_DILATION_VERT MAKEINTBFLT(6) #define BFLT_DILATION_DIAG MAKEINTBFLT(7) #define BFLT_DONTCARE 256 /*-----------------L_SpatialFilterBitmap Flags, Macros, -------------------*/ //#define SPATIALFLTSIZE(dim) (sizeof(SPATIALFLT) + (sizeof(L_INT) * (((L_INT) (dim) * (L_INT) (dim)) - 1))) #define MAKEINTFLT(i) ((LPSPATIALFLT)((L_UINT32)((L_UINT16) (i)))) #define FLT_EMBOSS_N MAKEINTFLT(0) #define FLT_EMBOSS_NE MAKEINTFLT(1) #define FLT_EMBOSS_E MAKEINTFLT(2) #define FLT_EMBOSS_SE MAKEINTFLT(3) #define FLT_EMBOSS_S MAKEINTFLT(4) #define FLT_EMBOSS_SW MAKEINTFLT(5) #define FLT_EMBOSS_W MAKEINTFLT(6) #define FLT_EMBOSS_NW MAKEINTFLT(7) #define FLT_GRADIENT_N MAKEINTFLT(8) #define FLT_GRADIENT_NE MAKEINTFLT(9) #define FLT_GRADIENT_E MAKEINTFLT(10) #define FLT_GRADIENT_SE MAKEINTFLT(11) #define FLT_GRADIENT_S MAKEINTFLT(12) #define FLT_GRADIENT_SW MAKEINTFLT(13) #define FLT_GRADIENT_W MAKEINTFLT(14) #define FLT_GRADIENT_NW MAKEINTFLT(15) #define FLT_LAPLACE_1 MAKEINTFLT(16) #define FLT_LAPLACE_2 MAKEINTFLT(17) #define FLT_LAPLACE_3 MAKEINTFLT(18) #define FLT_LAPLACE_DIAG MAKEINTFLT(19) #define FLT_LAPLACE_HORZ MAKEINTFLT(20) #define FLT_LAPLACE_VERT MAKEINTFLT(21) #define FLT_SOBEL_HORZ MAKEINTFLT(22) #define FLT_SOBEL_VERT MAKEINTFLT(23) #define FLT_PREWITT_HORZ MAKEINTFLT(24) #define FLT_PREWITT_VERT MAKEINTFLT(25) #define FLT_SHIFTDIFF_DIAG MAKEINTFLT(26) #define FLT_SHIFTDIFF_HORZ MAKEINTFLT(27) #define FLT_SHIFTDIFF_VERT MAKEINTFLT(28) #define FLT_LINESEG_HORZ MAKEINTFLT(29) #define FLT_LINESEG_VERT MAKEINTFLT(30) #define FLT_LINESEG_LTOR MAKEINTFLT(31) #define FLT_LINESEG_RTOL MAKEINTFLT(32) /*********************** L_SearchRegMarksBitmap Structure***********************/ __value struct SEARCHMARKS { L_UINT uStructSize; L_UINT uType; L_UINT uWidth; L_UINT uHeight; L_UINT uMinScale; L_UINT uMaxScale; RECT rcRect; L_UINT uSearchMarkCount; POINT pMarkDetectedPoints L__GC[]; L_UINT uMarkDetectedCount; }; #define LPSEARCHMARKS SEARCHMARKS * /*********************** L_AddBorder Structure***********************/ __value struct ADDBORDERINFO { L_UINT uStructSize; L_INT nLeftThickness; L_INT nTopThickness; L_INT nRightThickness; L_INT nBottomThickness; L_INT nLocation; L_INT nStyle; L_INT nEffectStyle; pBITMAPHANDLE pTileBitmap; L_INT nGradientStyle; COLORREF crGradientStart; COLORREF crGradientEnd; L_INT nCurveIntensity; L_BOOL bSoftCurve; L_BOOL bShadow; L_INT nShadowSize; L_INT nShadowDirection; L_BOOL bBumpyShadow; }; typedef ADDBORDERINFO * LPADDBORDERINFO; /*********************** L_AddFrame Structure***********************/ __value struct ADDFRAMEINFO { L_UINT uStructSize; pBITMAPHANDLE pBitmapFrame; L_BOOL bKeepFrameState; L_BOOL bUseMask; COLORREF crMask; L_UCHAR SmoothEdge; L_INT nLocation; L_INT nQuality; }; typedef ADDFRAMEINFO * LPADDFRAMEINFO; /*********************** L_DotRemoveBitmap Structure***********************/ __value struct DOTREMOVE { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinDotWidth; L_INT32 iMinDotHeight; L_INT32 iMaxDotWidth; L_INT32 iMaxDotHeight; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; }; public __delegate L_INT HOLEPUNCHREMOVECALLBACK ( HRGN hRgn, LPRECT pBoundingRect, L_INT32 iHoleIndex, L_INT32 iHoleTotalCount, L_INT32 iWhiteCount, L_INT32 iBlackCount, System::IntPtr pUserData ); public __delegate L_INT STAPLEREMOVECALLBACK ( HRGN hRgn, LPRECT pBoundingRect, L_UINT32 iWhiteCount, L_UINT32 iBlackCount, System::IntPtr pUserData ); public __delegate L_INT BORDERREMOVECALLBACK ( HRGN hRgn, L_UINT32 uBorderToRemove, LPRECT pBoundingRect, System::IntPtr pUserData ); public __delegate L_INT LINEREMOVECALLBACK ( HRGN hRgn, L_INT32 iStartRow, L_INT32 iStartCol, L_INT32 iLength, System::IntPtr pUserData ); public __delegate L_INT SMOOTHCALLBACK ( L_UINT32 uBumpOrNick, L_INT32 iStartRow, L_INT32 iStartCol, L_INT32 iLength, L_UINT32 uHorV, System::IntPtr pUserData ); public __delegate L_INT INVERTEDTEXTCALLBACK ( HRGN hRgn, LPRECT pBoundingRect, L_INT32 iWhiteCount, L_INT32 iBlackCount, System::IntPtr pUserData ); public __delegate L_INT DOTREMOVECALLBACK ( HRGN hRgn, LPRECT pBoundingRect, L_INT32 iWhiteCount, L_INT32 iBlackCount, System::IntPtr pUserData ); public __delegate L_INT BITMAPSLICECALLBACK ( pBITMAPHANDLE, LPRECT, L_INT, System::IntPtr ); private __delegate L_INT PICTURIZECALLBACK (pBITMAPHANDLE, L_INT, L_INT, System::IntPtr); /*********************** L_InvertedTextBitmap Structure***********************/ __value struct INVERTEDTEXT { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinInvertWidth; L_INT32 iMinInvertHeight; L_INT32 iMinBlackPercent; L_INT32 iMaxBlackPercent; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; }; __value struct SMOOTH { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iLength; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; }; /*********************** L_LineRemoveBitmap Structure***********************/ __value struct LINEREMOVE { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinLineLength; L_INT32 iMaxLineWidth; L_INT32 iWall; L_INT32 iMaxWallPercent; L_INT32 iGapLength; L_INT32 iVariance; L_UINT32 uRemoveFlags; HRGN hRgn; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; }; /*********************** L_BorderRemoveBitmap Structure***********************/ __value struct BORDERREMOVE { L_UINT uStructSize; L_UINT32 uFlags; L_UINT32 uBorderToRemove; L_INT32 iBorderPercent; L_INT32 iWhiteNoiseLength; L_INT32 iVariance; HRGN hRgn; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; } ; /*********************** L_HolePunchRemoveBitmap Structure***********************/ __value struct HOLEPUNCH { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinHoleCount; L_INT32 iMaxHoleCount; L_INT32 iMinHoleWidth; L_INT32 iMinHoleHeight; L_INT32 iMaxHoleWidth; L_INT32 iMaxHoleHeight; L_INT32 iLocation; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; }; __value struct STAPLE { L_UINT uStructSize; L_UINT32 uFlags; L_INT32 iMinLength; L_INT32 iMaxLength; L_INT32 iLocation; pBITMAPHANDLE pBitmapRegion; L_UINT uBitmapStructSize; HRGN hRgn; }; __value struct ADDMESGINFO { L_UINT uStructSize; System::String * pStrMsg; System::String * pPassword; System::String * pFileName; System::String * pDirectory; POINT pStart[]; }; __value struct VIGNETTEINFO { L_UINT uStructSize;// The size of the structure. POINT ptCenter; // Center for the Vignette object. L_INT nFading; // Fading percentage (0 - 100). L_UINT uFadingRate; // power of fading . L_UINT uWidth; // Width for Squares,Rectangles, and Ellipses. L_UINT uHeight; // Height for Squares,Rectangles, and Ellipses. COLORREF crVigColor; // The color used. L_UINT uFlags; // Flags }; typedef VIGNETTEINFO L_FAR * LPVIGNETTEINFO; /*---------------- L_MosaicTiles ID's -----------------------*/ __value struct MOSAICTILESINFO { L_UINT uStructSize; //The size of the structure. L_UINT uOpacity; //Opacity between the image and the enterd color. L_UINT uPenWidth; //Pen width. L_UINT uTileWidth; //Block Width in cartesian case. L_UINT uTileHeight; //Block Height in cartesian case. POINT ptCenter; L_UINT uFlags; //Flags L_UINT uShadowAngle; //Shadow Angle. L_UINT uShadowThreshold; //Shadow Threshold. COLORREF crBorderColor; //Border color. COLORREF crTilesColor; //Tile color. }; typedef MOSAICTILESINFO L_FAR * LPMOSAICTILESINFO; /*---------------- Mask Convolution Data -----------------------*/ __value struct MyPOINT { L_INT nXPos; L_INT nYPos; L_INT nPreValues L__GC[]; }; #define pMyPOINT MyPOINT L_FAR * __value struct KERNELINFO { MyPOINT pPoint L__GC[]; L_INT nCntr; }; #define pKERNELINFO KERNELINFO L_FAR * /*---------------- Plasma Data -----------------------*/ __value struct PLASMAINFO { L_UINT uStructSize; L_UINT uRedFreq; L_UINT uGreenFreq; L_UINT uBlueFreq; L_UINT uOpacity; L_UINT uShift; L_UINT uSize; L_UINT uFlags; }; #define LPPLASMAINFO PLASMAINFO L_FAR * __value struct MHBRGB { L_UINT uRed; L_UINT uGreen; L_UINT uBlue; }; __value struct MHBHSV { L_DOUBLE dHue; L_DOUBLE dSat; L_DOUBLE dVal; }; //==================SliceBitmap===================// __value struct SLICEBITMAPOPTIONS { L_UINT uStructSize; L_UINT uMaxDeskewAngle; L_INT crFill; L_INT uFlags; }; typedef SLICEBITMAPOPTIONS * pSLICEBITMAPOPTIONS; #endif /************************************* function prototypes ***************************************/ #if !defined (FOR_DOTNET) L_INT EXT_FUNCTION L_ChangeBitmapContrast (pBITMAPHANDLE pBitmap, L_INT nChange); L_INT EXT_FUNCTION L_ChangeBitmapHue (pBITMAPHANDLE pBitmap, L_INT nAngle); L_INT EXT_FUNCTION L_ChangeBitmapIntensity (pBITMAPHANDLE pBitmap, L_INT nChange); L_INT EXT_FUNCTION L_ChangeBitmapSaturation (pBITMAPHANDLE pBitmap, L_INT nChange); L_INT EXT_FUNCTION L_InvertBitmap (pBITMAPHANDLE pBitmap); L_INT EXT_FUNCTION L_RemapBitmapIntensity(pBITMAPHANDLE pBitmap, L_UINT L_FAR * pLUT, L_UINT uLUTLen,L_UINT uChannel); L_INT EXT_FUNCTION L_SharpenBitmap (pBITMAPHANDLE pBitmap, L_INT nSharpness); L_INT EXT_FUNCTION L_GetBitmapColorCount(pBITMAPHANDLE pBitmap, L_UINT32 L_FAR *puCount); L_INT EXT_FUNCTION L_GetAutoTrimRect(pBITMAPHANDLE pBitmap, L_UINT uThreshold, RECT L_FAR *pRect); L_INT EXT_FUNCTION L_AutoTrimBitmap(pBITMAPHANDLE pBitmap, L_UINT uThreshold); L_INT EXT_FUNCTION L_UnsharpMaskBitmap(pBITMAPHANDLE pBitmap, L_INT nAmount, L_INT nRadius, L_INT nThreshold, L_UINT uFlags); L_INT EXT_FUNCTION L_DeskewBitmap (pBITMAPHANDLE pBitmap, L_INT32 L_FAR *pnAngle, COLORREF crBack, L_UINT uFlags); L_INT EXT_FUNCTION L_DeskewBitmapExt(pBITMAPHANDLE pBitmap, L_INT32 L_FAR *pnAngle, L_UINT uAngleRange, L_UINT uAngleResolution, COLORREF crBack, L_UINT uFlags); L_INT EXT_FUNCTION L_DespeckleBitmap (pBITMAPHANDLE pBitmap); L_INT EXT_FUNCTION L_EdgeDetectorBitmap(pBITMAPHANDLE pBitmap, L_UINT uThreshold, L_UINT uFilter); L_INT EXT_FUNCTION L_IntensityDetectBitmap(pBITMAPHANDLE pBitmap, L_UINT uLow, L_UINT uHigh, COLORREF crInColor, COLORREF crOutColor, L_UINT uChannel); L_INT EXT_FUNCTION L_AverageFilterBitmap (pBITMAPHANDLE pBitmap, L_UINT uDim); L_INT EXT_FUNCTION L_BinaryFilterBitmap (pBITMAPHANDLE pBitmap, LPBINARYFLT pFilter); L_INT EXT_FUNCTION L_CombineBitmapExt(pBITMAPHANDLE pBitmapDst, L_INT nXDst, L_INT nYDst, L_INT nWidth, L_INT nHeight, pBITMAPHANDLE pBitmapSrc, L_INT nXSrc, L_INT nYSrc, L_UINT uFlag); L_INT EXT_FUNCTION L_MinFilterBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim); L_INT EXT_FUNCTION L_MaxFilterBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim); /* These functions not ported to Windows CE */ #if !defined(_WIN32_WCE) L_INT EXT_FUNCTION L_AddBitmapNoise (pBITMAPHANDLE pBitmap, L_UINT uRange, L_UINT uChannel); L_INT EXT_FUNCTION L_ColorMergeBitmap (pBITMAPHANDLE pBitmap, pBITMAPHANDLE L_FAR * ppBitmap, L_UINT uStructSize, L_UINT32 uFlags); L_INT EXT_FUNCTION L_ColorSeparateBitmap (pBITMAPHANDLE pBitmap, pBITMAPHANDLE L_FAR * ppBitmap, L_UINT uStructSize, L_UINT32 uFlags); L_INT EXT_FUNCTION L_EmbossBitmap (pBITMAPHANDLE pBitmap, L_UINT uDirection, L_UINT uDepth); L_INT EXT_FUNCTION L_GammaCorrectBitmap (pBITMAPHANDLE pBitmap, L_UINT uGamma); L_INT EXT_FUNCTION L_GetMinMaxBits(pBITMAPHANDLE pBitmap, L_INT L_FAR*pLowBit, L_INT L_FAR*pHighBit); L_INT EXT_FUNCTION L_GetMinMaxVal(pBITMAPHANDLE pBitmap, L_INT L_FAR*pMinVal, L_INT L_FAR*pMaxVal); L_INT EXT_FUNCTION L_HistoContrastBitmap (pBITMAPHANDLE pBitmap, L_INT nChange); L_INT EXT_FUNCTION L_MedianFilterBitmap (pBITMAPHANDLE pBitmap, L_UINT uDim); L_INT EXT_FUNCTION L_MosaicBitmap (pBITMAPHANDLE pBitmap, L_UINT uDim); L_INT EXT_FUNCTION L_PosterizeBitmap(pBITMAPHANDLE pBitmap, L_UINT uLevels); L_INT EXT_FUNCTION L_LineProfile(pBITMAPHANDLE pBitmap, POINT FirstPoint, POINT SecondPoint, L_INT L_FAR * L_FAR * pRed, L_INT L_FAR * L_FAR * pGreen, L_INT L_FAR * L_FAR * pBlue); L_INT EXT_FUNCTION L_GrayScaleBitmapExt(pBITMAPHANDLE pBitmap, L_INT RedFact, L_INT GreenFact, L_INT BlueFact); L_INT EXT_FUNCTION L_SwapColors(pBITMAPHANDLE pBitmap, L_INT nFlags); L_INT EXT_FUNCTION L_BalanceColors(pBITMAPHANDLE pBitmap, BALANCING L_FAR * pRedFact, BALANCING L_FAR * pGreenFact, BALANCING L_FAR * pBlueFact); L_INT EXT_FUNCTION L_ConvertToColoredGray(pBITMAPHANDLE pBitmap, L_INT RedFact, L_INT GreenFact, L_INT BlueFact, L_INT RedGrayFact, L_INT GreenGrayFact, L_INT BlueGrayFact); L_INT EXT_FUNCTION L_HistoEqualizeBitmap(pBITMAPHANDLE pBitmap, L_INT nFlag); L_INT EXT_FUNCTION L_AlphaBlendBitmap(pBITMAPHANDLE pBitmapDst, L_INT nXDst, L_INT nYDst, L_INT nWidth, L_INT nHeight, pBITMAPHANDLE pBitmapSrc, L_INT nXSrc, L_INT nYSrc, L_INT nOpacity); L_INT EXT_FUNCTION L_AntiAliasBitmap(pBITMAPHANDLE pBitmap, L_UINT uThreshold, L_UINT uDim, L_UINT uFilter); L_INT EXT_FUNCTION L_GetBitmapHistogram (pBITMAPHANDLE pBitmap, L_UINT32 L_FAR * pHisto, L_UINT uHistoLen, L_UINT uFlags); L_INT EXT_FUNCTION L_GetUserLookUpTable(L_UINT L_FAR * pLookupTable, L_UINT uLookupLen, POINT L_FAR * apUserPoint, L_UINT uUserPointCount, L_UINT L_FAR * puPointCount); L_INT EXT_FUNCTION L_GetFunctionalLookupTable(L_UINT L_FAR * pLookupTable, L_UINT uLookupLen, L_UINT uStart, L_UINT uEnd, L_INT nFactor, L_UINT uFlag); L_INT EXT_FUNCTION L_ConvertBitmapSignedToUnsigned(pBITMAPHANDLE pBitmap, L_UINT uShift); L_INT EXT_FUNCTION L_TextureAlphaBlendBitmap(pBITMAPHANDLE pBitmapDst, L_INT nXDst, L_INT nYDst, L_INT nWidth, L_INT nHeight, pBITMAPHANDLE pBitmapSrc, L_INT nXSrc, L_INT nYSrc, pBITMAPHANDLE pBitmapMask, L_INT nOpacity, pBITMAPHANDLE pBitmapUnderlay, LPPOINT pOffset); L_INT EXT_FUNCTION L_RemapBitmapHue(pBITMAPHANDLE pBitmap, L_UINT L_FAR * pMask, L_UINT L_FAR * pHTable, L_UINT L_FAR * pSTable, L_UINT L_FAR * pVTable, L_UINT uLUTLen); L_INT EXT_FUNCTION L_MultiplyBitmap (pBITMAPHANDLE pBitmap, L_UINT uFactor); L_INT EXT_FUNCTION L_LocalHistoEqualizeBitmap(pBITMAPHANDLE pBitmap, L_INT nWidth, L_INT nHeight, L_INT nxExt, L_INT nyExt, L_UINT uType, L_UINT uSmooth); L_INT EXT_FUNCTION L_GetCurvePoints(L_INT L_FAR* pCurve, POINT L_FAR* apUserPoint, L_UINT uUserPointCount, L_UINT L_FAR * puPointCount, L_UINT uFlag); L_INT EXT_FUNCTION L_SolarizeBitmap (pBITMAPHANDLE pBitmap, L_UINT uThreshold); L_INT EXT_FUNCTION L_SpatialFilterBitmap (pBITMAPHANDLE pBitmap, LPSPATIALFLT pFilter); L_INT EXT_FUNCTION L_StretchBitmapIntensity (pBITMAPHANDLE pBitmap); L_INT EXT_FUNCTION L_WindowLevelBitmap(pBITMAPHANDLE pBitmap, L_INT nLowBit, L_INT nHighBit, RGBQUAD L_HUGE*pLUT, L_UINT32 uLUTLength, L_INT nOrderDst); L_INT EXT_FUNCTION L_GaussianFilterBitmap(pBITMAPHANDLE pBitmap, L_INT nRadius); L_INT EXT_FUNCTION L_SmoothBitmap ( pBITMAPHANDLE pBitmap, LPSMOOTH pSmooth, SMOOTHCALLBACK pfnCallback, L_VOID L_FAR * pUserData); L_INT EXT_FUNCTION L_LineRemoveBitmap( pBITMAPHANDLE pBitmap, LPLINEREMOVE pLineRemove, LINEREMOVECALLBACK pfnCallback, L_VOID L_FAR * pUserData); L_INT EXT_FUNCTION L_BorderRemoveBitmap( pBITMAPHANDLE pBitmap, LPBORDERREMOVE pBorderRemove, BORDERREMOVECALLBACK pfnCallback, L_VOID L_FAR *pUserData); L_INT EXT_FUNCTION L_InvertedTextBitmap(pBITMAPHANDLE pBitmap, LPINVERTEDTEXT pInvertedText, INVERTEDTEXTCALLBACK pfnCallback, L_VOID L_FAR *pUserData); L_INT EXT_FUNCTION L_DotRemoveBitmap( pBITMAPHANDLE pBitmap, LPDOTREMOVE pDotRemove, DOTREMOVECALLBACK pfnCallback, L_VOID L_FAR *pUserData); L_INT EXT_FUNCTION L_HolePunchRemoveBitmap( pBITMAPHANDLE pBitmap, LPHOLEPUNCH pHolePunch, HOLEPUNCHREMOVECALLBACK pfnCallback, L_VOID L_FAR *pUserData); //L_StapleRemoveBitmap() reserved for future use L_INT EXT_FUNCTION L_StapleRemoveBitmap( pBITMAPHANDLE pBitmap, LPSTAPLE pStaplePunch, STAPLEREMOVECALLBACK pfnCallback, L_VOID L_FAR *pUserData); L_INT EXT_FUNCTION L_OilifyBitmap (pBITMAPHANDLE pBitmap, L_UINT uDim); L_INT EXT_FUNCTION L_PicturizeBitmap(pBITMAPHANDLE pBitmap, L_TCHAR L_FAR*pszDirName, L_UINT uFlags, L_INT nCellWidth, L_INT nCellHeight, PICTURIZECALLBACK pfnCallback, L_VOID L_FAR*pUserData); L_INT EXT_FUNCTION L_ContourFilterBitmap( pBITMAPHANDLE pBitmap, L_INT16 nThreshold, L_INT16 nDeltaDirection, L_INT16 nMaximumError, L_INT nOption); L_INT EXT_FUNCTION L_ResizeBitmapRgn(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uFlag, L_BOOL bAsFrame); L_INT EXT_FUNCTION L_CreateFadedMask(pBITMAPHANDLE pBitmap, pBITMAPHANDLE pMaskBitmap, L_UINT uStructSize, L_INT nLength, L_INT nFadeRate, L_INT nStepSize, L_INT nInflate, L_UINT uFlag, L_INT nMaxGray, COLORREF crTransparent); L_INT EXT_FUNCTION L_AddBitmaps(pBITMAPHANDLE pBitmap, L_UINT uStructSize, HBITMAPLIST hList, L_UINT uFlag); L_INT EXT_FUNCTION L_MotionBlurBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_INT nAngle, L_BOOL bUnidirectional); L_INT EXT_FUNCTION L_PicturizeBitmapList(pBITMAPHANDLE pBitmap, L_UINT uCellWidth, L_UINT uCellHeight, L_UINT uLightnessFact, HBITMAPLIST hList); L_INT EXT_FUNCTION L_PicturizeBitmapSingle(pBITMAPHANDLE pBitmap, pBITMAPHANDLE pThumbBitmap, L_UINT uCellWidth, L_UINT uCellHeight, L_UINT uLightnessFact); L_INT EXT_FUNCTION L_AddBorder(pBITMAPHANDLE pBitmap, LPADDBORDERINFO pAddBorderInfo); L_INT EXT_FUNCTION L_AddFrame(pBITMAPHANDLE pBitmap, LPADDFRAMEINFO pAddFrameInfo); L_INT EXT_FUNCTION L_AddWeightedBitmaps(pBITMAPHANDLE pBitmap, L_UINT uStructSize, HBITMAPLIST hList, L_UINT L_FAR * puFactor, L_UINT uFlag); L_INT EXT_FUNCTION L_AddMessageToBitmap(pBITMAPHANDLE pBitmap, LPADDMESGINFO pAddMesgInfo); L_INT EXT_FUNCTION L_ExtractMessageFromBitmap(pBITMAPHANDLE pBitmap, LPADDMESGINFO pAddMesgInfo); L_INT EXT_FUNCTION L_PixelateBitmap(pBITMAPHANDLE pBitmap, L_UINT uCellWidth, L_UINT uCellHeight, L_UINT uOpacity, POINT CenterPt, L_UINT uFlags); L_INT EXT_FUNCTION L_SpherizeBitmap(pBITMAPHANDLE pBitmap, L_INT nValue, POINT CenterPt, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_CylindricalBitmap(pBITMAPHANDLE pBitmap, L_INT nValue, L_UINT uType); L_INT EXT_FUNCTION L_BendingBitmap(pBITMAPHANDLE pBitmap, L_INT nValue, POINT CenterPt, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_PunchBitmap(pBITMAPHANDLE pBitmap, L_INT nValue, L_UINT uStress, POINT CenterPt, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_PolarBitmap(pBITMAPHANDLE pBitmap, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_RadialBlurBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uStress, POINT CenterPt); L_INT EXT_FUNCTION L_RippleBitmap(pBITMAPHANDLE pBitmap, L_UINT uAmplitude, L_UINT uFrequency, L_INT nPhase, L_UINT uAttenuation, POINT CenterPt, COLORREF crFill, L_UINT uFlag); L_INT EXT_FUNCTION L_SwirlBitmap(pBITMAPHANDLE pBitmap, L_INT nAngle, POINT CenterPt); L_INT EXT_FUNCTION L_ZoomBlurBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uStress, POINT CenterPt); L_INT EXT_FUNCTION L_FreeHandWaveBitmap(pBITMAPHANDLE pBitmap, L_INT L_FAR * pAmplitudes, L_UINT uAmplitudesCount, L_UINT uScale, L_UINT uWaveLen, L_INT nAngle, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_ImpressionistBitmap(pBITMAPHANDLE pBitmap, L_UINT uHorzDim, L_UINT uVertDim); L_INT EXT_FUNCTION L_RadWaveBitmap(pBITMAPHANDLE pBitmap, L_UINT uAmplitude, L_UINT uWaveLen, L_INT nPhase, POINT pCenter, COLORREF crFill, L_UINT uFlag); L_INT EXT_FUNCTION L_FreeHandShearBitmap(pBITMAPHANDLE pBitmap, L_INT L_FAR *pAmplitudes, L_UINT uAmplitudesCount, L_UINT uScale, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_WaveBitmap(pBITMAPHANDLE pBitmap, L_UINT uAmplitude, L_UINT uWaveLen, L_INT nAngle, L_UINT uHorzFact, L_UINT uVertFact, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_WindBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_INT nAngle, L_UINT uOpacity); L_INT EXT_FUNCTION L_ZoomWaveBitmap(pBITMAPHANDLE pBitmap, L_UINT uAmplitude, L_UINT uFrequency, L_INT nPhase, L_UINT uZomFact, POINT CenterPt, COLORREF crFill, L_UINT uFlag); L_INT EXT_FUNCTION L_RemoveRedeyeBitmap(pBITMAPHANDLE pBitmap, COLORREF rcNewColor, L_UINT uThreshold, L_INT nLightness); L_INT EXT_FUNCTION L_FeatherAlphaBlendBitmap(pBITMAPHANDLE pBitmapDst, L_INT nXDst, L_INT nYDst, L_INT nWidth, L_INT nHeight, pBITMAPHANDLE pBitmapSrc, L_INT nXSrc, L_INT nYSrc, pBITMAPHANDLE pBitmapMask); /**** v14 functions ****/ L_INT EXT_FUNCTION L_DeinterlaceBitmap(pBITMAPHANDLE pBitmap, L_UINT uFlags); L_INT EXT_FUNCTION L_SampleTargetBitmap (pBITMAPHANDLE pBitmap, COLORREF crSample, COLORREF crTarget, L_UINT uFlags); L_INT EXT_FUNCTION L_HalfToneBitmap(pBITMAPHANDLE pBitmap, L_UINT uType, L_INT32 nAngle, L_UINT uDim, HBITMAPLIST hList); L_INT EXT_FUNCTION L_HolesRemovalBitmapRgn(pBITMAPHANDLE pBitmap); L_INT EXT_FUNCTION L_CubismBitmap (pBITMAPHANDLE pBitmap, L_UINT uSpace, L_UINT uLength, L_INT nBrightness, L_INT nAngle, COLORREF crColor, L_UINT uFlags); L_INT EXT_FUNCTION L_LightControlBitmap (pBITMAPHANDLE pBitmap, L_UINT L_FAR * puLowerAvr, L_UINT L_FAR * puAvrage, L_UINT L_FAR * puUpperAvr, L_UINT uFlag); L_INT EXT_FUNCTION L_GlassEffectBitmap (pBITMAPHANDLE pBitmap, L_UINT uCellWidth, L_UINT uCellHeight, L_UINT uFlags); L_INT EXT_FUNCTION L_LensFlareBitmap(pBITMAPHANDLE pBitmap, POINT ptCenter, L_UINT uBright, L_UINT uFlag, COLORREF crColor); L_INT EXT_FUNCTION L_BumpMapBitmap(pBITMAPHANDLE pBitmapDst, pBITMAPHANDLE pBumpBitmap, LPBUMPDATA pBumpData); L_INT EXT_FUNCTION L_GlowFilterBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uBright, L_UINT uThreshold); L_INT EXT_FUNCTION L_EdgeDetectStatisticalBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uThreshold, COLORREF crEdgeColor, COLORREF crBkColor); L_INT EXT_FUNCTION L_DesaturateBitmap(pBITMAPHANDLE pBitmap); L_INT EXT_FUNCTION L_SmoothEdgesBitmap(pBITMAPHANDLE pBitmap, L_UINT nAmount, L_UINT nThreshold); L_INT EXT_FUNCTION L_AutoBinaryBitmap(pBITMAPHANDLE pBitmap); L_INT EXT_FUNCTION L_ChannelMix (pBITMAPHANDLE pBitmap, COLORDATA L_FAR * pRedFactor, COLORDATA L_FAR * pGreenFactor, COLORDATA L_FAR * pBlueFactor); L_INT EXT_FUNCTION L_PlaneBitmap(pBITMAPHANDLE pBitmap, POINT ptCenterPoint, L_UINT uZValue, L_INT nDistance, L_UINT uPlaneOffset, L_INT nRepeat, L_INT nPydAngle, L_UINT uStretch, L_UINT uStartBright, L_UINT uEndBright, L_UINT uBrightLength, COLORREF crBright, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_PlaneBendBitmap(pBITMAPHANDLE pBitmap, POINT ptCenterPoint, L_UINT uZValue, L_INT nDistance, L_UINT uPlaneOffset, L_INT nRepeat, L_INT nPydAngle, L_UINT uStretch, L_UINT uBendFactor, L_UINT uStartBright, L_UINT uEndBright, L_UINT uBrightLength, COLORREF crBright, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_TunnelBitmap(pBITMAPHANDLE pBitmap, POINT ptCenterPoint, L_UINT uZValue, L_INT nDistance, L_UINT uRad, L_INT nRepeat, L_INT nRotationOffset, L_UINT uStretch, L_UINT uStartBright, L_UINT uEndBright, L_UINT uBrightLength, COLORREF crBright, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_FreeRadBendBitmap(pBITMAPHANDLE pBitmap, L_INT L_FAR * pnCurve, L_UINT uCurveSize, L_UINT uScale, POINT CenterPt, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_FreePlaneBendBitmap(pBITMAPHANDLE pBitmap, L_INT L_FAR * pnCurve, L_UINT uCurveSize, L_UINT uScale, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_OceanBitmap(pBITMAPHANDLE pBitmap, L_UINT uAmplitude, L_UINT uFrequency, L_BOOL bLowerTrnsp); L_INT EXT_FUNCTION L_LightBitmap(pBITMAPHANDLE pBitmap, LPLIGHTINFO pLightInfo, L_UINT uLightNo, L_UINT uBright, L_UINT uAmbient, COLORREF crAmbientClr); L_INT EXT_FUNCTION L_DryBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim); L_INT EXT_FUNCTION L_DrawStarBitmap(pBITMAPHANDLE pBitmap, LPSTARINFO pStarInfo); L_INT EXT_FUNCTION L_FFTBitmap(pBITMAPHANDLE pBitmap, pFTARRAY pFTArray, L_UINT uFlags); L_INT EXT_FUNCTION L_FTDisplayBitmap(pBITMAPHANDLE pBitmap, pFTARRAY pFTArray, L_UINT uFlags); L_INT EXT_FUNCTION L_DFTBitmap(pBITMAPHANDLE pBitmap, pFTARRAY pFTArray, RECT L_FAR * prcRange, L_UINT uFlags); L_INT EXT_FUNCTION L_FrqFilterBitmap(pFTARRAY pFTArray, LPRECT prcRange, L_UINT uFlags); L_INT EXT_FUNCTION L_FrqFilterMaskBitmap(pBITMAPHANDLE pMaskBitmap, pFTARRAY pFTArray, L_BOOL bOnOff); L_INT EXT_FUNCTION L_AllocFTArray(pBITMAPHANDLE pBitmap, pFTARRAY L_FAR * ppFTArray, L_UINT uStructSize); L_INT EXT_FUNCTION L_FreeFTArray(pFTARRAY pFTArray); L_INT EXT_FUNCTION L_GrayScaleToDuotone(pBITMAPHANDLE pBitmap, LPRGBQUAD pNewColor, COLORREF crColor, L_UINT uFlags); L_INT EXT_FUNCTION L_GrayScaleToMultitone(pBITMAPHANDLE pBitmap, L_UINT uToneType, L_UINT uDistType, LPCOLORREF pColor, LPRGBQUAD L_FAR * pGradient, L_UINT uFlags); L_INT EXT_FUNCTION L_SkeletonBitmap(pBITMAPHANDLE pBitmap, L_UINT uThreshold); L_INT EXT_FUNCTION L_ColorLevelBitmap (pBITMAPHANDLE pBitmap, pLVLCLR pLvlClr, L_UINT uFlags); L_INT EXT_FUNCTION L_AutoColorLevelBitmap (pBITMAPHANDLE pBitmap, pLVLCLR pLvlClr, L_UINT uBlackClip, L_UINT uWhiteClip, L_UINT uFlags); L_INT EXT_FUNCTION L_SelectiveColorBitmap (pBITMAPHANDLE pBitmap, pSELCLR pSelClr); L_INT EXT_FUNCTION L_CorrelationBitmap(pBITMAPHANDLE pBitmap, pBITMAPHANDLE pCorBitmap, POINT L_FAR * pPoints, L_UINT uMaxPoints, L_UINT L_FAR * puNumOfPoints, L_UINT uXStep, L_UINT uYStep, L_UINT uThreshold); L_INT EXT_FUNCTION L_GetObjectInfo(pBITMAPHANDLE pBitmap, L_UINT L_FAR * puX, L_UINT L_FAR * puY, L_INT L_FAR * pnAngle, L_UINT L_FAR * puRoundness, L_BOOL bWeighted); L_INT EXT_FUNCTION L_GetRgnContourPoints(pBITMAPHANDLE pBitmap, pRGNXFORM pXForm, POINT L_FAR * L_FAR * ppPoints, L_UINT L_FAR * puSize); L_INT EXT_FUNCTION L_SegmentBitmap(pBITMAPHANDLE pBitmap, L_UINT uThreshold, L_UINT uFlag); L_INT EXT_FUNCTION L_GetRgnPerimeterLength(pBITMAPHANDLE pBitmap, pRGNXFORM pXForm, L_UINT L_FAR * puLength); L_INT EXT_FUNCTION L_GetFeretsDiameter(POINT L_FAR * pPoints, L_UINT uSize, L_UINT L_FAR * puFeretsDiameter, L_UINT L_FAR * puFirstIndex, L_UINT L_FAR * puSecondIndex); L_INT EXT_FUNCTION L_ColorReplaceBitmap(pBITMAPHANDLE pBitmap, LPCOLORREPLACE pColorReplace, L_UINT uColorCount, L_INT nHue, L_INT nSaturation, L_INT nBrightness); L_INT EXT_FUNCTION L_ChangeHueSatIntBitmap(pBITMAPHANDLE pBitmap, L_INT nHue, L_INT nSaturation, L_INT nIntensity, LPHSIDATA pHsiData, L_UINT uHsiDataCount); L_INT EXT_FUNCTION L_GetBitmapStatisticsInfo (pBITMAPHANDLE pBitmap, LPSTATISTICSINFO pStatisticsInfo, L_UINT uChannel, L_UINT uStart, L_UINT uEnd); L_INT EXT_FUNCTION L_UserFilterBitmap (pBITMAPHANDLE pBitmap, LPUSERFLT pFilter); L_INT EXT_FUNCTION L_ColorReplaceWeightsBitmap(pBITMAPHANDLE pBitmap, LPCOLORREPLACE pColorReplace, L_UINT uColorCount); L_INT EXT_FUNCTION L_DirectionEdgeStatisticalBitmap (pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uThreshold, L_INT nAngle, COLORREF crEdgeColor, COLORREF crBkColor); L_INT EXT_FUNCTION L_MathFunctionBitmap(pBITMAPHANDLE pBitmap, L_UINT uMType, L_UINT uFactor); L_INT EXT_FUNCTION L_ColorThresholdBitmap(pBITMAPHANDLE pBitmap, L_UINT uColorSpace, LPCOMPDATA pCompData); L_INT EXT_FUNCTION L_RevEffectBitmap(pBITMAPHANDLE pBitmap, L_UINT uLineSpace, L_UINT uMaximumHeight); L_INT EXT_FUNCTION L_AddShadowBitmap(pBITMAPHANDLE pBitmap, L_UINT uAngle, L_UINT uThreshold, L_UINT uFlags); L_INT EXT_FUNCTION L_SubtractBackgroundBitmap(pBITMAPHANDLE pBitmap, L_UINT uRollingBall, L_UINT uShrinkSize, L_UINT uBrightnessFactor, L_UINT uFlags); L_INT EXT_FUNCTION L_ApplyModalityLUT(pBITMAPHANDLE pBitmap, L_UINT16 L_FAR *pLUT, pDICOMLUTDESCRIPTOR pLUTDescriptor, L_UINT uFlags); L_INT EXT_FUNCTION L_ApplyLinearModalityLUT( pBITMAPHANDLE pBitmap, L_DOUBLE fIntercept, L_DOUBLE fSlope, L_UINT uFlags); L_INT EXT_FUNCTION L_ApplyVOILUT( pBITMAPHANDLE pBitmap , L_UINT16 L_FAR* pLUT , pDICOMLUTDESCRIPTOR pLUTDescriptor , L_UINT uFlags); L_INT EXT_FUNCTION L_ApplyLinearVOILUT( pBITMAPHANDLE pBitmap , L_DOUBLE fCenter , L_DOUBLE fWidth , L_UINT uFlags); L_INT EXT_FUNCTION L_GetLinearVOILUT( pBITMAPHANDLE pBitmap, L_DOUBLE *pCenter, L_DOUBLE *pWidth, L_UINT uFlags); L_INT EXT_FUNCTION L_CountLUTColors( RGBQUAD L_HUGE * pLUT, L_UINT32 ulLLUTLen, L_UINT * pNumberOfEntries, L_INT * pFirstIndex, L_UINT uFlags); L_INT EXT_FUNCTION L_AdaptiveContrastBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uAmount, L_UINT uFlag); L_INT EXT_FUNCTION L_AgingBitmap(pBITMAPHANDLE pBitmap, L_UINT uHScratchCount, L_UINT uVScratchCount, L_UINT uMaxScratchLen, L_UINT uDustDensity, L_UINT uPitsDensity, L_UINT uMaxPitSize, COLORREF crScratch, COLORREF crDust, COLORREF crPits, L_UINT uFlags); L_INT EXT_FUNCTION L_DynamicBinaryBitmap(pBITMAPHANDLE pBitmap, L_UINT uDim, L_UINT uLocalContrast); L_INT EXT_FUNCTION L_ColorIntensityBalance(pBITMAPHANDLE pBitmap, LPBALANCEDATA pShadows, LPBALANCEDATA pMidTone, LPBALANCEDATA pHighLight, L_BOOL bLuminance); L_INT EXT_FUNCTION L_ApplyMathLogicBitmap (pBITMAPHANDLE pBitmap, L_INT nFactor, L_UINT uFlags); L_INT EXT_FUNCTION L_EdgeDetectEffectBitmap(pBITMAPHANDLE pBitmap, L_UINT uLevel, L_UINT uThreshold, L_UINT uFlags); L_INT EXT_FUNCTION L_FunctionalLightBitmap(pBITMAPHANDLE pBitmap, LPLIGHTPARAMS pLightParams); L_INT EXT_FUNCTION L_DiceEffectBitmap (pBITMAPHANDLE pBitmap, L_UINT uXBlock, L_UINT uYBlock, L_UINT uRandomize, L_UINT uFlags, COLORREF crColor); L_INT EXT_FUNCTION L_PuzzleEffectBitmap (pBITMAPHANDLE pBitmap, L_UINT uXBlock, L_UINT uYBlock, L_UINT uRandomize, L_UINT uFlags, COLORREF crColor); L_INT EXT_FUNCTION L_RingEffectBitmap(pBITMAPHANDLE pBitmap, L_INT nXOrigin, L_INT nYOrigin, L_UINT uRadius, L_UINT uRingCount, L_UINT uRandomize, COLORREF crColor, L_INT nAngle, L_UINT uFlags); L_INT EXT_FUNCTION L_MultiScaleEnhancementBitmap (pBITMAPHANDLE pBitmap, L_UINT uContrast, L_UINT uEdgeLevels, L_UINT uEdgeCoeff, L_UINT uLatitudeLevels, L_UINT uLatitudeCoeff, L_UINT uFlags); L_INT EXT_FUNCTION L_ShiftBitmapData (pBITMAPHANDLE pDstBitmap, pBITMAPHANDLE pSrcBitmap, L_UINT uSrcLowBit, L_UINT uSrcHighBit, L_UINT uDstLowBit, L_UINT uDstBitsPerPixel); L_INT EXT_FUNCTION L_SelectBitmapData (pBITMAPHANDLE pDstBitmap, pBITMAPHANDLE pSrcBitmap, COLORREF crColor, L_UINT uSrcLowBit, L_UINT uSrcHighBit, L_UINT uThreshold, L_BOOL bCombine); L_INT EXT_FUNCTION L_ColorizeGrayBitmap (pBITMAPHANDLE pDstBitmap, pBITMAPHANDLE pSrcBitmap, #if defined(LT_USE_RENAMED_STRUCT) pLTGRAYCOLOR pGrayColors, #else pGRAYCOLOR pGrayColors, #endif L_UINT uCount); L_INT EXT_FUNCTION L_DigitalSubtractBitmap (pBITMAPHANDLE pBitmap, pBITMAPHANDLE pMaskBitmap, L_UINT uFlags); L_INT EXT_FUNCTION L_ContBrightIntBitmap (pBITMAPHANDLE pBitmap, L_INT nContrast, L_INT nBrightness, L_INT nIntensity); L_INT EXT_FUNCTION L_IsRegMarkBitmap(pBITMAPHANDLE pBitmap, L_UINT uType, L_UINT uMinScale, L_UINT uMaxScale, L_UINT uWidth, L_UINT uHeight); L_INT EXT_FUNCTION L_GetMarksCenterMassBitmap(pBITMAPHANDLE pBitmap, POINT L_FAR * pMarkPoints, POINT L_FAR * pMarkCMPoints, L_UINT uMarksCount); L_INT EXT_FUNCTION L_SearchRegMarksBitmap(pBITMAPHANDLE pBitmap, LPSEARCHMARKS pSearchMarks, L_UINT uMarkCount); L_INT EXT_FUNCTION L_GetTransformationParameters(pBITMAPHANDLE pBitmap, POINT L_FAR * pRefPoints, POINT L_FAR * pTrnsPoints, L_INT L_FAR * pnXTranslation, L_INT L_FAR * pnYTranslation, L_INT L_FAR * pnAngle, L_UINT L_FAR * puXScale, L_UINT L_FAR * puYScale); L_INT EXT_FUNCTION L_ApplyTransformationParameters(pBITMAPHANDLE pBitmap, L_INT nXTranslation, L_INT nYTranslation, L_INT nAngle, L_UINT uXScale, L_UINT uYScale, L_UINT uFlags); L_INT EXT_FUNCTION L_ConvertBitmapUnsignedToSigned(pBITMAPHANDLE pBitmap, L_UINT uFlag); L_INT EXT_FUNCTION L_OffsetBitmap (pBITMAPHANDLE pBitmap, L_INT nHorizontalShift, L_INT nVerticalShift, COLORREF crBackColor, L_UINT uFlag); L_INT EXT_FUNCTION L_BricksTextureBitmap(pBITMAPHANDLE pBitmap, L_UINT uBricksWidth, L_UINT uBricksHeight, L_UINT uOffsetX, L_UINT uOffsetY, L_UINT uEdgeWidth, L_UINT uMortarWidth, L_UINT uShadeAngle, L_UINT uRowDifference, L_UINT uMortarRoughness, L_UINT uMortarRoughnessEevenness, L_UINT uBricksRoughness, L_UINT uBricksRoughnessEevenness, COLORREF crMortarColor, L_UINT uFlags); L_INT EXT_FUNCTION L_CanvasBitmap (pBITMAPHANDLE pBitmap, pBITMAPHANDLE pThumbBitmap, L_UINT uTransparency, L_UINT uEmboss, L_INT nXOffset, L_INT nYOffset, L_UINT uTilesOffset, L_UINT uFlags); L_INT EXT_FUNCTION L_FragmentBitmap(pBITMAPHANDLE pBitmap, L_UINT uOffset, L_UINT uOpacity); L_INT EXT_FUNCTION L_CloudsBitmap(pBITMAPHANDLE pBitmap, L_UINT uSeed, L_UINT uFrequency, L_UINT uDensity, L_UINT uOpacity, COLORREF cBackColor, COLORREF crCloudsColor, L_UINT uFlag); L_INT EXT_FUNCTION L_VignetteBitmap(pBITMAPHANDLE pBitmap, LPVIGNETTEINFO pVignetteInfo); L_INT EXT_FUNCTION L_MosaicTilesBitmap(pBITMAPHANDLE pBitmap, LPMOSAICTILESINFO pMosaicTilesInfo); L_INT EXT_FUNCTION L_RomanMosaicBitmap(pBITMAPHANDLE pBitmap, L_UINT uTileWidth, L_UINT uTileHeight, L_UINT uBorder, L_UINT uShadowAngle, L_UINT uShadowThresh, COLORREF crColor, L_UINT uFlags); L_INT EXT_FUNCTION L_GammaCorrectBitmapExt(pBITMAPHANDLE pBitmap, L_UINT uGamma, L_UINT uFlag); L_INT EXT_FUNCTION L_MaskConvolutionBitmap (pBITMAPHANDLE pBitmap, L_INT nAngle, L_UINT uDepth, L_UINT uHeight, L_UINT uFlag); L_INT EXT_FUNCTION L_PlasmaFilterBitmap(pBITMAPHANDLE pBitmap, LPPLASMAINFO pPlasmaInfo); L_INT EXT_FUNCTION L_AdjustBitmapTint (pBITMAPHANDLE pBitmap, L_INT nAngleA, L_INT nAngleB); L_INT EXT_FUNCTION L_ColoredPencilBitmap (pBITMAPHANDLE pBitmap, L_UINT uRatio, L_UINT uDim); L_INT EXT_FUNCTION L_PerlinBitmap(pBITMAPHANDLE pBitmap, L_UINT uSeed, L_UINT uFrequency, L_UINT uDensity, L_UINT uOpacity, COLORREF cBackColor, COLORREF Perlin, L_INT nxCircle, L_INT nyCircle, L_INT nFreqLayout, L_INT nDenLayout, L_UINT uFlag); L_INT EXT_FUNCTION L_DiffuseGlowBitmap(pBITMAPHANDLE pBitmap, L_INT nGlowAmount, L_UINT uClearAmount, L_UINT uSpreadAmount, L_UINT uWhiteNoise, COLORREF crGlowColor); L_INT EXT_FUNCTION L_DisplaceMapBitmap(pBITMAPHANDLE pBitmap, pBITMAPHANDLE pDisplacementMap, L_UINT uHorzFact, L_UINT uVertFact, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_HighPassFilterBitmap(pBITMAPHANDLE pBitmap, L_UINT uRadius, L_UINT uOpacity); L_INT EXT_FUNCTION L_ZigZagBitmap(pBITMAPHANDLE pBitmap, L_UINT uAmplitude, L_UINT uAttenuation, L_UINT uFrequency, L_INT nPhase, POINT CenterPt, COLORREF crFill, L_UINT uFlags); L_INT EXT_FUNCTION L_ColorHalfToneBitmap(pBITMAPHANDLE pBitmap, L_UINT uMaxRad, L_INT nCyanAngle, L_INT nMagentaAngle, L_INT nYellowAngle, L_INT nBlackAngle); L_INT EXT_FUNCTION L_ColoredBallsBitmap(pBITMAPHANDLE pBitmap, L_UINT uNumBalls, L_UINT uSize, L_UINT uSizeVariation, L_INT nHighLightAng, COLORREF crHighLight, COLORREF crBkgColor, COLORREF crShadingColor, #if !defined(FOR_DOTNET) COLORREF L_FAR * pBallColors, #else COLORREF pBallColors L__GC[], #endif L_UINT uNumOfBallColors, L_UINT uAvrBallClrOpacity, L_UINT uBallClrOpacityVariation, L_UINT uRipple, L_UINT uFlags); L_INT EXT_FUNCTION L_PerspectiveBitmap(pBITMAPHANDLE pBitmap, #if !defined(FOR_DOTNET) POINT L_FAR * pPoints, #else POINT pPoints L__GC[], #endif COLORREF crBkgColor, L_UINT uFlags); L_INT EXT_FUNCTION L_PointillistBitmap(pBITMAPHANDLE pBitmap, L_UINT uSize, COLORREF crColor, L_UINT uFlag); L_INT EXT_FUNCTION L_HalfTonePatternBitmap(pBITMAPHANDLE pBitmap, L_UINT uContrast, L_UINT uRipple, L_UINT uAngleContrast, L_UINT uAngleRipple, L_INT nAngleOffset, COLORREF crForGround, COLORREF crBackGround, L_UINT uFlag); L_INT EXT_FUNCTION L_CorrelationListBitmap(pBITMAPHANDLE pBitmap, HBITMAPLIST hCorList, POINT L_FAR * pPoints, L_UINT L_FAR * puListIndex, L_UINT uMaxPoints, L_UINT L_FAR * puNumOfPoints, L_UINT uXStep, L_UINT uYStep, L_UINT uThreshold); L_INT EXT_FUNCTION L_SetKaufmannRgnBitmap(pBITMAPHANDLE pBitmap, pBITMAPHANDLE pKaufmannProcBitmap, L_INT nRadius, L_INT nMinInput, L_INT nMaxInput, L_INT nRgnThreshold, POINT ptRgnStart, L_BOOL bRemoveHoles, L_UINT32 L_FAR * puPixelsCount, L_UINT uCombineMode); L_INT EXT_FUNCTION L_SliceBitmap(pBITMAPHANDLE pBitmap, pSLICEBITMAPOPTIONS pOptions, L_INT32 L_FAR * pnDeskewAngle, BITMAPSLICECALLBACK pfnCallback, L_VOID L_FAR* pUserData); L_INT EXT_FUNCTION L_ShiftMinimumToZero(pBITMAPHANDLE pBitmap, L_UINT L_FAR * puShiftAmount); L_INT EXT_FUNCTION L_ShiftZeroToNegative(pBITMAPHANDLE pBitmap, L_INT nShiftAmount, L_INT nMinInput, L_INT nMaxInput, L_INT nMinOutput, L_INT nMaxOutput); #endif /* _WIN32_WCE */ #endif // #if !defined(FOR_DOTNET) #undef _HEADER_ENTRY_ #include "ltpck.h" #endif /* _LTIMG_H_ */