To take advantage of IEVision's functionality you will need to ship ievision.dll (or one of the variations below) with your application.
The IEVision DLL should be installed in one of the following locations:
- The same folder as your application EXE (Recommended)
- The Windows System32 folder
- A path specified in the Windows %PATH% environment variable
Distribution is royalty-free if you have purchased an ImageEn and IEVision license.
IEVision Usage
You must initialize IEVision and
specify your serial number or it will operate in trial mode.
IEGlobalSettings().RegisterPlugIns( [iepiIEVision], 'me@mycompany.com', 'ievis-12345-67890-12345-67890-12345-67890' );
if not ( iepiIEVision in IEGlobalSettings().ActivePlugIns ) then
begin
ShowMessage( 'This application requires the ievision.dll plug-in, v' + IEGlobalSettings().ImageEnVersion.IELibVersionStr +'. Please download it from www.imageen.com' );
exit;
end;
// Now use IEVision...
If you only want to check if the IEVision DLL is accessible call
IEVisionAvailable:
if IEVisionAvailable() = False then
begin
ShowMessage('This application requires the IEVision.dll plugin');
Application.Terminate;
exit;
end;
The ievision unit exports all interfaces and
global methods, plus the
IEVisionLib public field which encapsulates the factory class
TIEVisionLibrary.
It is possible to encapsulate an ImageEn bitmap (
TIEBitmap) inside a IEVision bitmap (
TIEVisionImage), but it is necessary to change the TIEBitmap origin. For example:
ImageEnView1.IEBitmap.Origin := ieboTOPLEFT;
image := IEVisionLib.createImage(ImageEnView1.IEBitmap.Width, ImageEnView1.IEBitmap.Height,
ievUINT8, 3, ImageEnView1.IEBitmap.Rowlen,
ImageEnView1.IEBitmap.ScanLine[0]);
This way you can access all IEVision functions and share the results to a TImageEnView embedded image. It is also possible to create an IEVision image from scratch and then copy it to TIEBitmap or TImageEnView.
An alternative way is to use
GetIEVisionImage which sets the bitmap origin and pixel format for you:
image := ImageEnView1.IEBitmap.GetIEVisionImage();
All IEVision objects are implemented as COM objects, so you don't need to handle object destruction (it happens automatically at runtime).
For example, if you create an IEVision image with:
image := IEVisionLib.createImage(1000, 1000, ievUINT8, 3);
You don't need to free or dispose it.
IEVision DLL Variants
You need to ship ONE of the following library sets:
DLL | Description |
ievision.dll | Standard IEVision library for 32bit applications |
ievision64.dll | Standard IEVision library for 64bit applications |
ievision-Trial.dll | Trial of IEVision library for 32bit applications (do not ship) |
ievision64-Trial.dll | Trial of IEVision library for 64bit applications (do not ship) |
Note:
◼If your application includes IEVision, you do
NOT need to include
ielib32.dll or ielib64.dll (as IEVision embed the functionality).
◼Previously OpenMP versions (e.g. ievision-mp.dll) were available that improved performance via multi-threading. From IEVision v5.5.0 a special OpenMP version is not required to access the performance improvements
See Also
◼DLL Version History