/*[]=====================================================================[]*/ /*[] LeadTools Run Time Library - Version 13 []*/ /*[] []*/ /*[] []*/ /*[] Copyright (c) 1991-2001 LEAD Technologies, Inc. []*/ /*[] All Rights Reserved. []*/ /*[]=====================================================================[]*/ #define STRICT #include #include #include #include #include #include #include #include #include "../../../include/l_bitmap.h" #include "../../../include/l_error.h" #include "demo.h" /* for screen capture functions*/ #ifdef WIN32 L_INT nCaptureNo=0; L_INT nCaptureType=0; L_INT nLastCaptureType=0; L_BOOL bInCapture=FALSE; BITMAPHANDLE CapturedBitmap; LEADCAPTUREAREAOPTION CaptureAreaOption; LEADCAPTUREOBJECTOPTION ObjectOptions; #endif DWORD nOpenIndex; DWORD nSaveIndex; VERSIONINFO VersionInfo; L_TCHAR szImageDir[_MAX_PATH]; L_TCHAR szBitmapWndClass[]=TEXT("LEADBITMAPWNDCLASS"); L_TCHAR szChildClass[] = TEXT("LEADDEMOCHILD"); L_TCHAR szFrameClass[] = TEXT("LEADDEMOFRAME"); L_TCHAR szFrameTitle[] = TEXT("LEADTOOLS Demo"); L_TCHAR szProgressBarClass[] = TEXT("PROGRESSBAR"); L_BOOL fInLoadFile = FALSE; L_BOOL fLoadCompressed = TRUE; L_BOOL fLoadRotated = TRUE; L_BOOL fShowPreview = TRUE; L_BOOL fShowResize = TRUE; L_BOOL fLoadVecFiles = FALSE; L_BOOL fLoadTxtFiles = FALSE; L_BOOL fTotalPages = TRUE; L_BOOL fLoadRawFax = TRUE; L_BOOL fShowApply = TRUE; /* Variables for status bar use. */ L_BOOL fInProcess; STATUSCALLBACK lpfnOldStatusCB; FARPROC lpfnStatusBar; STATUSCALLBACK lpfnOldStatus; BITMAPHANDLE StatusBarBitmap; HWND hWndStatus; L_BOOL fKillProgress; L_BOOL fUseProgress; L_BOOL fUseFastPrint; HWND hWndClient; HWND hWndFrame; #ifdef WIN32 HWND hBrowseDlg; #endif HINSTANCE hInst; L_INT nBitonalFlags = 0; L_INT nDitherMode = IDM_ORDEREDDITHERING; L_INT nPaletteMode = IDM_PALETTEAUTO; L_BOOL fNetscapePalette = FALSE; L_BOOL fDoPaintWhileLoad = FALSE; L_BOOL fIsBGRDevice = TRUE; L_BOOL fLoadAsOriginal = TRUE; L_INT nRegionTool = IDM_TOOLNONE; L_INT nPaintResizeFlags = DISPLAYMODE_RESAMPLE; L_BOOL bDrawingCurve = FALSE; //for drawing Bezier, curve L_BOOL bEraseCurvePoints = FALSE; BITMAPHANDLE ColorSepBitmap; /* BitmapHandle for Color Separation. */ BITMAPHANDLE ColorPlanes[4]; /* BitmapHandles for Color Separation. */ pBITMAPHANDLE pColorPlanes[4]; /* BitmapHandle pointers for Color Separation. */ L_UINT uEffectDelay; HBRUSH hListBkGndBrush=0; L_INT nCurrentPage=0; L_UINT uPicturizeFlags = PICTURIZE_LOADALL | PICTURIZE_RESAMPLE; LOADFILEOPTION LoadFileOption; SAVEFILEOPTION SaveFileOption; L_DOUBLE dCurveTension = 0.5; //used for curve region tool L_INT nCurveClose = CURVE_CLOSE; L_BOOL bDICOMLoadMsg = TRUE; L_BOOL bDICOMSaveMsg = TRUE; HTWAINSESSION g_hTwainSession = NULL; L_TCHAR szResName[MAX_PATH]=TEXT(""); L_TCHAR szCommandLine[L_MAXPATH]; L_BOOL bCommandLine = FALSE ; //dialogs structer. COLORRESDLGPARAMS ColorParam ; HALFTONEDLGPARAMS HalfToneParams ; CONTOURFILTERDLGPARAMS ContourFilterParams ; ROTATEDLGPARAMS RotateParams ; SHEARDLGPARAMS ShearParams ; BRIGHTNESSDLGPARAMS BrightnessParams ; CONTRASTDLGPARAMS ContrastParams ; HISTOCONTRASTDLGPARAMS HistoContrastParams; SATURATIONDLGPARAMS SaturationParams; SHARPENDLGPARAMS SharpenParams; HUEDLGPARAMS HueParams; AVERAGEDLGPARAMS AverageParams; MEDIANDLGPARAMS MedianParams; OILIFYDLGPARAMS OilifyParams; MINFILTERDLGPARAMS MinFilterParams; MAXFILTERDLGPARAMS MaxFilterParams; ADDNOISEDLGPARAMS AddNoiseParams; POSTERIZEDLGPARAMS PosterizeParams; MOSAICDLGPARAMS MosaicParams; EMBOSSDLGPARAMS EmbossParams; GRADIENTFILTERDLGPARAMS GradientFilterParams; LAPLACIANFILTERDLGPARAMS LaplacianFilterParams; SOBELFILTERDLGPARAMS SobelFilterParams; PREWITTFILTERDLGPARAMS PrewittFilterParams; SHIFTDIFFERENCEFILTERDLGPARAMS ShiftDifferenceFilterParams; LINESEGMENTFILTERDLGPARAMS LineSegmentFilterParams; EROSIONFILTERDLGPARAMS ErosionFilterParams; DILATIONFILTERDLGPARAMS DilationFilterParams; SOLARIZEDLGPARAMS SolarizeParams; GAMMAADJUSTMENTDLGPARAMS GammaAdjustmentParams; RESIZEDLGPARAMS ReizeParams; JPEGWEBTUNERDLGPARAMS JPEGWebTunerParams; PNGWEBTUNERDLGPARAMS PNGWebTunerParams; GIFWEBTUNERDLGPARAMS GIFWebTunerParams; HTMLMAPPERDLGPARAMS HTMLMapperParams; AUTOTRIMDLGPARAMS AutoTrimParams; ADDBORDERDLGPARAMS AddBorderParams; ADDFRAMEDLGPARAMS AddFrameParams; SMOOTHDLGPARAMS SmoothParams; LINEREMOVEDLGPARAMS LineRemoveParams; BORDERREMOVEDLGPARAMS BorderRemoveParams; DOTREMOVEDLGPARAMS DotRemoveParams; INVERTEDTEXTDLGPARAMS InvertedTextParams; HOLEPUNCHREMOVEDLGPARAMS HolePunchRemoveParams; REMOVEREDEYEDLGPARAMS RemoveRedeyeParams; CANVASRESIZEDLGPARAMS CanvasResizeParams; HISTOGRAMDLGPARAMS HistogramParams; MOTIONBLURDLGPARAMS MotionBlurParams; RADIALBLURDLGPARAMS RadialBlurParams ; ZOOMBLURDLGPARAMS ZoomBlurParams ; GAUSSIANBLURDLGPARAMS GaussianBlurParams ; ANTIALIASDLGPARAMS AntiAliasParams ; UNSHARPMASKDLGPARAMS UnsharpMaskParams ; MULTIPLYDLGPARAMS MultiplyParams ; FREEHANDWAVEDLGPARAMS FreeHandWaveParams ; WINDDLGPARAMS WindParams ; POLARDLGPARAMS PolarParams ; ZOOMWAVEDLGPARAMS ZoomWaveParams ; RADIALWAVEDLGPARAMS RadialWaveParams ; SWIRLDLGPARAMS SwirlParams ; WAVEDLGPARAMS WaveParams ; WAVESHEARDLGPARAMS WaveShearParams ; PUNCHDLGPARAMS PunchParams ; RIPPLEDLGPARAMS RippleParams ; BENDINGDLGPARAMS BendingParams ; CYLINDRICALDLGPARAMS CylindricalParams ; SPHERIZEDLGPARAMS SpherizeParams ; IMPRESSIONISTDLGPARAMS ImpressionistParams ; UNDERLAYDLGPARAMS UnderlayParams ; PIXELATEDLGPARAMS PixelateParams ; PICTURIZEDLGPARAMS PicturizeParams ; EDGEDETECTORDLGPARAMS EdgeDetectorParams ; INTENSITYDETECTDLGPARAMS IntensityDetectParams; BALANCECOLORSDLGPARAMS BalanceColorsParams; GRAYSCALEDLGPARAMS GrayScaleParams; COLOREDGRAYDLGPARAMS ColoredGrayParams; REMAPINTENSITYDLGPARAMS RemapIntensityParams; REMAPHUEDLGPARAMS RemapHueParams; LOCALHISTOEQUALIZEDLGPARAMS LocalHistoEqualizeParams; PRINTPREVIEWDLGPARAMS PrintPreviewParams ; WINDOWLEVELDLGPARAMS WindowLevelParams ;