
CDibImage
v1.28 An MFC class framework to encapsulate
Device Independent Bitmaps (DIBs) and Image Processing
Some of its many features include:
- Support for loading of DIBs from file,
resource and global memory. DIB, Jpeg and Targa Truevision support is
included.
- Working area support including a user
extensible architecture.
- Comprehensive filter matrices including 3*3,
5*5 and 7*7.
- User defined filter support.
- Comprehensive undo and redo support
including end user adjustment of levels and description strings.
- Built in functions to convert between the
RGB and HSL color spaces.
- Full file save support.
- Full clipboard support.
- Full Screen capture support.
- Comprehensive collection of image processing
functions including brightness, contrast, gamma, HSL, blur, edge, noise, RGB, mirror,
negate and grayscale plus many others.
- Selection of histogram & channel
functions.
- Single function support for GDI drawing
& printing.
- Includes GetPixel and SetPixel functions to
allow end user modification of bitmap data.
- Fully supports the UNICODE programming
model.
- Comprehensive documentation of all the classes is provided.
Included in the package is a demo program which implements a simple
image processing application using CDibImage. When run it appears as follows:

Shareware Notice
CDibImage
is shareware and this trial version
is fully functional evaluation version. This means that you are free to evaluate
and use it for up to 30 days. After this period if you are still using CDibImage then you
should register CDibImage with the author.
You can register directly with
the author via normal post. Note that I cannot directly accept credit cards. If
you wish to use a credit card, then let me know and I will setup online
registration for CDibImage. The
cost via snail mail is $30.00. Remember to include your email address in your
letter so that I can quickly confirm receipt of your registration. To register
directly with me, you can send a cheque (made payable to PJ Naughter), cash or
international money order to:
PJ Naughter,
Clonganny,
Ballygarrett,
Gorey,
Co. Wexford,
Ireland.
Updates
V1.0 (18 November 1997)
V1.01 (9 November 1998)
- Help file now uses Arial instead of Verdanda
font. This is consistent with the rest of my code
- Code now ships with a VC 5 workspace file
instead of a VC 4.x mak file
- Fixed an off by one bug which was
occurring when you flipped or mirrored certain images.
- Fixed the undo message when you mirrored an
image
- Renamed the undo strings which need to be
included to use CDibImage
- Updated version info in the sample app.
V1.1 (26 July 1999)
- Unicode enabled the code +
provision of Unicode configurations in the workspace.
- Inclusion of a
C3By3MeanFilter.
- Tidy up of how CDibImage
disposes of its resources.
- Addition of a Detach method.
- Pixel access is now supported
for 1, 4, 8 and 24 bit pixel formats.
- Function to convert from a
HBITMAP to a DIB.
- Function to convert to a
HBITMAP.
- Function to screen capture a
specified area of a specified window.
- Function to convert to 24
bits.
- Unified all the low-level API
to manage DIB files into as single source code.
- ColorsUsed function has now been implemented.
- General tidy up and spell check of the help file.
V1.11 (6 September 1999)
- Provision of an
IsRunLengthEncoded function.
- Updates to the
DataFormatSupported function to prevent access violations in the dibedit
sample application
V1.2 (6 September 1999)
- Now includes full Jpeg read /
write support by means of the Intel Jpeg Library (IJL). This library
provides royalty free support for Jpegs on the Wintel platform on Pentium
computers or better. A cut down version of IJL is included in this CDibImage
distribution. For further details and to download the full SDK, please see
the IJL web site at http://developer.intel.com/vtune/PERFLIBST/ijl/index.htm.
Most of the Jpeg work was kindly provided in CDibImage by RC FOTESCU.
V1.21 (21 September 1999)
- Fixed a bug in the function
WindowToDIB which is used by CDibImage::CopyFromWindow.
V1.22 (3 October 1999)
- Optimized memory usage when
loading and saving JPEG images from file.
V1.23 (24 January 2000)
- Updated code to use Intel Jpeg Library v1.1.
V1.24 (8 March 2000)
- Added support for True color targa (.tga) file loading
and saving
- jpeg loading and saving code thoroughly reviewed and
optimized
- The sample app now clears the histogram correctly when
there are no views visible.
V1.25 (20 March 2000)
- Modified some code in CDibImage which was causing the
VC++ 6 compiler to bomb out
- Removed a number of unreferenced variables detected by
VC++ 6.
- Removed a number of useless comments in tgaapi.cpp
V1.26 (24 March 2000)
- Fixed a problem with the archive not containing the
files to support Targa support, specifically tgaapi.cpp and tgaapi.h
V1.27 (2 April 2000)
- Fixed an access violation in ::ReadJPegFile
- Added a call to GlobalUnlock which was missing in
CDibImage::UserDefinedFilter
V1.28 (31 October 2000)
- Updated code to use Intel Jpeg Library
v1.5.
23 December 2005
- Please note at some stage in the not too distant future I plan to rework
the class to be based on the new ATL / MFC CImage class and probably make it
open source. Your feedback on this would be welcome!.