Programs that use controls from earlier
versions of the ImageKit:
Unfortunately, it is not possible to simply exchange the older
ImageKit controls with the new ImageKit8 ActiveX controls and run
the program. There are a number of differences between the earlier
versions of the ImageKit and the ImageKit8 that must be considered.
These differences are explained below and the conversion from
earlier versions of the ImageKit to the ImageKit8 is not at all
difficult. It should be pointed out that all versions of the
ImageKit ActiveX controls can coexist on the same form. The image
handle used by the earlier versions of the ImageKit can be passed
to the ImageKit8 controls allowing you to use the newer ImageKit8
functionality. However, the ImageKit8, like the ImageKit7 before
it, does not provide the individual controls that existed in
versions ImageKit6 or earlier; controls such as the Common Control,
Display Control, Effect Control, File Control, Print Control, Scan
Control, Slideshow Control. These controls have been discontinued
and, except for the Slideshow Control, their functionality has been
incorporated into the single ImageKit Control. The Slideshow
Control is no longer included in the ImageKit8 ActiveX
In programs that use the ImageKit DLL API:
To convert an existing ImageKit DLL program made from earlier
versions of the ImageKit, you simply need to change function calls
to the ImageKit8 DLL. It should be noted that in the case of
earlier ImageKit DLL programs, the image handles passed into the
DLL functions and returned as results of these functions are
automatically freed by the ImageKit8 DLLs. However, the ImageKit8
is unable to automatically free the image handles from the
ImageKit5 and these must be freed manually.
ImageKit5
When using ActiveX controls
1) Methods that have been moved to other controls
The Effect Control's ClearClipBrd, CopyImage, CreateImage,
GetFromClipBrd, IsClipBrd, and SetToClipBrd methods have been moved
to the Common Control. In some cases the return values or the
properties that these methods use have been changed.
2) Property names that have changed (ImageKit5 -->
ImageKit8)
A. Display Control
PanWindowCap --> PanWindowCaption
PanMouseCur --> PanWindowMouseCur
PanRectRev --> PanWindowRectRev
B. Scan Control
Pixeltype --> PixelType
Resolution --> XResolution, YResolution
InUnitMode, OutUnitMode --> UnitMode
C. Slideshow Control
EndLess --> Endless
3) Method names that have changed (ImageKit5 --> ImageKit8)
Effect Control: Shade --> Blur
Scan Control: ScanGetPixeltype --> ScanGetPixelType
4) Deleted methods (ImageKit5 --> ImageKit8)
Print Control: SetDeviceMode
This method has been deleted but the parameters of the drawing
methods have increased
5) Changes in useage
A. Print Control - Printing order:
In the ImageKit5, the order of
commands for printing were:
PrintStartDoc
PrintStartPage
..............
Some
drawing functions here
..............
PrintEndPage
PrintEndDoc
In the ImageKit8, this order is
changed to:
PrintDlg
or PrintCreateDC
PrintStartDoc
PrintStartPage
..............
Some
drawing functions here
..............
PrintEndPage
PrintEndDoc
PrintDeleteDC
B. Scan Control - Execution order
In the ImageKit5:
Each
method was executed independently
In the ImageKit8, the order is:
ScanInitialize
..............
scanning
methods here
..............
ScanTerminate
6) Other changes
Methods, event parameters, and return values have been changed. In
those cases changes will be noted on the relevant page, at the
bottom, in a section called [Differences from the
ImageKit5].
When using DLL API
1) Functions that have been moved to other dlls
The Ik5Effect.dll functions IK5ClearClipBrd, IK5CopyImage,
IK5CreateImage, IK5GetFromClipBrd, IK5IsClipBrd, IK5SetToClipBrd in
the ImageKit8 have been moved to the Ik8Com.dll, Ik8ComA.dll,
Ik8Com64.dll, Ik8Com64A.dll .
2) Function names that have changed (ImageKit5 -->
ImageKit8)
The beginning of all function names have been changed from "IK5" to
"IK".
Ik8Effect.dll, Ik8EffectA.dll, Ik8Effect64.dll,Ik8Effect64A.dll :
IK5Shade --> IKBlur
Ik8Scan.dll, Ik8ScanA.dll, Ik8Scan64.dll,
Ik8Scan64A.dll : IK5ScanGetPixeltype -->
IKScanGetPixelType
3) Deleted functions (ImageKit5 --> ImageKit8)
The Ik5Print.dll IK5SetDeviceMode function has been deleted but
parameters of drawing functions have been added.
4) Changes in Useage
A. Ik8Print.dll,
Ik8PrintA.dll,Ik8Print64.dll ,Ik8Print64A.dll -
Printing order
In the IK5, the order of the commands
for printing were:
IK5PrintStartDoc
IK5PrintStartPage
..............
Some
drawing functions here
..............
IK5PrintEndPage
IK5PrintEndDoc
Ik8:
IKPrintDlg
or IKPrintCreateDC
IKPrintStartDoc
IKPrintStartPage
..............
Some
drawing functions here
..............
IKPrintEndPage
IKPrintEndDoc
IKPrintDeleteDC
B. Ik8Scan.dll, Ik8ScanA.dll, Ik8Scan64.dll, Ik8Scan64A.dll -
Execution order
IK5:
Each
function executed independently
In the Ik8, the scanning order
is:
IKScanInitialize
..............
some
scanning functions here
..............
IKScanTerminate
5) Changes in structure names (ImageKit5 --> ImageKit8)
The beginning of member variables have been changed from IK5 to
IK.
Example: IK5IMAGE_INFO --> IKIMAGE_INFO
6) Other changes
Functions, User functions (callback procedures), parameters, and
return values have been changed. In those cases, changes will be
noted on the relevant page, at the bottom in a section
called [Differences from the ImageKit5].
ImageKit6
When using ActiveX controls
1) Property names that have changed (ImageKit6 -->
ImageKit8)
A. Display Control
Edit.FillPatten --> Edit.FillPattern
B. Print Control
PrintQuality --> XResolution, YResolution
C. Thumbnail Control
MouseCursor --> SelectMouseCursorFile
MouseCursorTypeFile --> MouseCursorFile
2) Other
Some constant names have changed. In such cases, the changes will
be noted on the relevant page at the bottom in a section
called [Differences from the ImageKit6].
When using DLL API
The Ik6Com.dll functions IKCreateVectImage, IKCreateVectImageEx,
IKDrawVectObject, and IKVectToDib have been moved to the
Ik8VectCom.dll, Ik8VectComA.dll, Ik8VectCom64.dll,
Ik8VectCom64A.dll.
2) Function names that have changed (ImageKit6 -->
ImageKit8)
Ik8VectCom.dll, Ik8VectComA.dll, Ik8VectCom64.dll,
Ik8VectCom64A.dll: IKVectToDib --> IKVectorToRaster
3) Other
Other changes will be noted on the relevant page, at the bottom in
a section called [Differences from the ImageKit6].
ImageKit7
Other changes will be noted on the relevant page, at the bottom in
a section called [Differences from the ImageKit7].