ImageGlue .NET is made up of two components: the ImageGlue Core Engine and ImageGlue itself.
The Core Engine is a native Windows DLL typically installed in system32. There are actually two Core Engines - a 32 bit one for x86 systems and a 64 bit one for x64 systems.
ImageGlue.DLL is a .NET tier and is placed in the GAC so that you can reference ImageGlue .NET from any of your projects. Should you require it you can always copy the DLLs to the bin directory of your application.
Unless you have side-by-side versioning (available in Windows XP) you will not be able to have multiple versions of ImageGlue installed in the GAC. In this case you should install the relevant assemblies in the bin directories of your application.
There are two optional COM+ applications that - ABCImageMagick.dll and ABCQuickTime.dll. These two COM+ components extend ImageGlue by using the ImageMagick and QuickTime libraries. This results in a greater number of image and movie file formats being supported.
|ImageGlue 8 is like System.Drawing...
ImageGlue 8 is a new version completely independent of the old. Simply use the new namespace to switch to ImageGlue 8.
The API in WebSupergoo.ImageGlue8 is fundamentally different from the ImageGlue 7 API. It is based around the concepts in System.Drawing.
Should you wish to avoid changing your code, then continue using WebSupergoo.ImageGlue7. This namespace is preserved for backwards compatibility and it allows existing applications to use ImageGlue 7 without changes.
|... But Different
The ImageGlue8 namespace is based around the concepts in System.Drawing. However, while very similar, it is not exactly the same.
Some areas have been fleshed out and some have been rationalized. The aim is to provide something akin to a System.Drawing 2.0.
Take the following code snippet. If you have been using System.Drawing in the past you will know why it is wrong.
It is not obvious that this line of code will save a bitmap in PNG format. It is not enough to just provide a .JPG file extension - you need to use the Save overload which takes a second ImageFormat parameter.
So this is one thing we have changed. If you do not provide a format then ImageGlue will work out which one you want from the file extension. It makes things simple and obvious.
Indeed most of the changes we have made are for similar reasons. If, when you port your System.Drawing code, you find an API missing or changed it is likely that we are forcing you to think if perhaps the previous API was being used incorrectly.
|To be Precise...
So what notable changes have been made?