Puzzle Filter

#include "BIFILTER.H"

 

HANDLE CALLBACK FilterPuzzle(                    HDIB     hDIB,
int           iHorizontal,
int           iVertical,
int           iShowProgress,
HWND  hParent)

Description

Puzzle filter is an artistic filter. The filter creates small images by cutting the original one, and mixes them. The size of the small images can be adjusted by the iHorizontal and iVertical parameters. This function works for only 8 bit per pixel and 24 bit per pixel images.

Examples

source                                                    puzzle           

The original 160 x 170 pixel image and the result image with iVertical = iHorizontal = 5.

Parameters

HDIB

hDIB

Handle of the DIB to filter.

iHorizontal

int

Horizontal size of cut images, cannot be less than 1.

iVertical

Int

Vertical size of cut images, cannot be less than 1.

int

iShowProgress

This parameter specifies the displaying of the progressbar and the preview dialog.

Available values:

DISPLAY_NONE (0)     -     The progressbar and the preview dialog will not display before filtering.

DISPLAY_PROGRESS (1) -The progressbar will display during filtering procedure.

DISPLAY_DIALOG (2)      -                                   The preview dialog will display before filtering. This dialog shows the part of the image before and after filtering.

DISPLAY_BOTH (3)     -     The progressbar and the preview dialog will display.

IMPORTANT: The preview dialog will only display, if there is BiDlgs.dll installed.

HWND

hParent

Handler of the parent window.

Return values

The handle of the new filtered DIB or NULL if an error occurred.

Programming notes

The function will not free the input DIB.

Requirements

Header :     Declared in BIFilter.h; include BIFilter.h.

Library :    Use BIFilter.lib.

DLLs :             BIFilter.dll.