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
- Working area support including a user
- 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
- Single function support for GDI drawing
- Includes GetPixel and SetPixel functions to
allow end user modification of bitmap data.
- Fully supports the UNICODE programming
- 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:
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
- 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
- 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
- Function to screen capture a
specified area of a specified window.
- Function to convert to 24
- 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
- Updates to the
DataFormatSupported function to prevent access violations in the dibedit
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
- jpeg loading and saving code thoroughly reviewed and
- 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
- 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
V1.28 (31 October 2000)
- Updated code to use Intel Jpeg Library
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!.
10 February 2017