Upgrading from FormFix 4 to FormFix 6
This section describes how to upgrade from FormFix 4 to FormFix 6. While generally you'll be able to replace FormFix 4 with FormFix 6, there are a few important changes you may need to consider.
Assembly Changes
Projects must now target .NET Framework 3.5 or later to build with the FormDirector assembly.
The assembly filename has been renamed from Accusoft.FormFix4.Net.dll to Accusoft.FormFix.Net.dll. Project references must be updated to use the new assembly.
Licensing Changes
- The FormFix runtime licensing scheme is changed completely in V5, but you can replace the existing with at most 3 lines of code. See Upgrading Runtime Licensing for code examples.
- The following API was removed from V5, so any code reference to it needs to be removed.
Accusoft.FormFix.Licensing.LicenseEdition property
Recommended Changes
Image Transfer
There are several different ways to import and export image data into the FormFix class. In V5, we provided new interfaces for image transfer between ScanFix Xpress and other applicable Accusoft components. These new methods are recommended for their ease of use and to prevent memory leaks.
Export
void FormImage.CopyTo(System.Object Destination);
void FormImage.TransferTo(System.Object Destination);
Import
Importing image data to a FormImage object is achieved by passing a FormImage object as the input of the same export methods called by another Accusoft object.
The FormImage object has to be instantiated before being passed in.
API Changes
- Removed
- The property OMRProcessor.OriginOfClip, which was deprecated in FormFix 4, was removed in V5.
- New OMR
FormFix 5 introduces changes to the API's functioning as described in this section.
- A new mechanism for OMR processing, which is set using the new OmrProcessor.RecognitionEngine property.
- When RecognitionEngine is set to RecognitionEngine.SingleThreshold, the new mechanism for OMR processing is used.
- When RecognitionEngine is set to RecognitionEngine.DualThresholdLegacy, the older way is used.
- The new SingleThreshold engine is intended to simplify the use of OMR and is recommended over the DualThresholdLegacy engine.
- New OMR Processing Mechanism
- If all marks are above threshold and there are no segments with too many marks, the behavior will be what was seen in FormFix 4. The improvements are to cases outside this range, and are as follows:
- In a Single Bubble segment, the confidence values will reflect the degree to which the bubbles are marked.
- In a Multiple Bubbles Single Mark Allowed segment, a marked result will *not* be returned if the mark density is below threshold. Also, if multiple bubbles are marked above threshold, the string stored in the new property TooManyMarksSegmentResult is returned.
- In a Multiple Bubbles Multiple Marks Allowed segment, a marked result will *not* be returned if the mark density is below threshold. Also, if all bubbles are marked with densities that are close to each other with some above threshold, only those above the threshold will be returned as marked.
- Added the following new properties:
- Deprecated
As part of the change for the new OMR mechanism, the following have been deprecated and will be removed from a future release of FormFix:
If you encounter any porting issues, please contact
Support for assistance.