Discover the answers to Frequently Asked Questions about FormSuite for Structured Forms below.
Currently there is no way to move a license key from one machine to another. Once a license key is tied to a machine, you can remove it from the machine (using the License Manager or manually deleting it from the registry), but that will not credit a license to your account. That said, if you run into an issue where you have licensed a machine by mistake, please contact firstname.lastname@example.org as they will work with you. We understand this is a current limitation of our licensing system and don’t want you to be adversely affected. Also, typically a development license comes with three "keys", so if you want to license an additional machine you most likely can. Run and log in to the License Manager and you can see the number of license keys remaining.
No, although if you run an Accusoft licensing utility (as opposed to an OEM key) that will communicate with the Accusoft servers to place a license on your machine. That's it. When you run your code, network access to Accusoft servers is not necessary.
As SmartZone runs, it will create a folder in the %TEMP% directory containing a few files that the engine needs to run. If you want to change this location, you can do that by creating an INI file in the same directory as the executable that runs your application. You must name that INI file smartzoneengineloader.ini. The contents of smartzoneengineloader.ini should look like this:
tempdir = C:\Your\Path\Here\
- Open Windows Explorer and type ftp://ftp.jpg.com/ into the Navigation Bar.
- Right Click inside Windows Explorer to bring up the standard context menu.
- Find "Login As" and click it to login to FTP Server.
- Provide the user name: support and the password: 853ae90f
Since overall, each scenario is different due to the different types of forms being used, here are some guidelines to help achieve the best results: For FormFix
- Your form templates should only have images of blank, unfilled forms. Ideally, you do not want to use an image from a filled-in form, or a form with data that is unique to other images you expect to match with it. FormFix will examine each pixel in the template when processing against an incoming image to determine a match. If there is unique data on the template that doesn't appear on the incoming image, FormFix could reject the incoming image, determining it not to be a match to the template.
- Always use the same DPI for your templates and incoming, filled-in images when processing forms.
- The IdentificationQuality parameter tells FormFix how much effort to put into recognizing detail in the image. Higher settings will have it pay more attention to detail, but is slower. And, lower settings are more lenient, but can lead to false-positives.
- When defining fields for OMR, FormFix will be looking for the actual bubbles or checkboxes to exist in the field.
- SmartZone processes binary, 1-bit images. So, if you have color images, you'll want to binarize them in such a way that favors good quality of the text characters that appear on the image.
- Acquiring images at higher DPI resolutions (300 or above) will allow the text objects to be represented by more pixels This is particularly useful for smaller text that's on the image.
- Sometimes removing lines on the entire form after identification can help accommodate better OCR & ICR detection.
- While AutoBinarize works well in general cases, sometimes using the Binarize method and manually setting parameters can provide a better tweak.
- If your documents have disturbing amounts of background noise that's showing after binarizing, try using Image Detergent before performing the binarize.
In all cases, you’ll want to have your images as clear and as clean as possible. For any particular procedure, please consider the following: OCR and ICR: Capture images in at least 300 DPI resolution. Ideally, working in black and white will allow the objects of interest on your image to be better defined and recognized. Free the image form all noise as much as possible. As if a human was reading it, you’ll want the text objects on the image to be as legible as possible. For ICR, make sure that the characters are printed (no cursive text, etc). Barcode recognition: As with OCR and ICR, capture images in at least 300 DPI and working with black and white content can provide excellent results. You’ll also want to make sure that the bars in the barcodes are clearly defined on the image and are not mal-formed (for example, the barcodes should have the proper start and stop sequence, etc). As always, clear as much noise from the image as possible. Forms matching and registration: As with the prior 2 items above, capture your documents in at least 300 DPI. Make sure that your resolution is consistent between your form templates and incoming batch images as well. Form templates should only contain data that is common to every image that is being processed (i.e. – Form fields, the text that appears on the blank form itself, etc). The template should not have filled-in field information as this will affect the forms matching process.
The Tagged Image File Format (TIFF) is widely popular, and is particularly used in document imaging. It can support a number of compression types:
- Packbits - Created by Apple, this lossless compression type is used for run-length encoding (RLE). Baseline TIFF readers must support this compression. Use this compression for higher compatibility with various applications.
- CCITT (Huffman encoding) - Used particularly for encoding bitonal (or bi-level) images. "Group 3" and "Group 4" are particularly known for its use with fax transmission of images. Using this compression type will help keep smaller file sizes.
- LZW - A lossless compression type that supports multiple bit depths. Because it's lossless, it produces files that are generally larger than other compressions. Use this compression if you want to retain the exact visual quality of the image without data loss or artifacts.
- JPEG - Very popular compression, used for color and grayscale images and can produce high compression ratios. JPEG allows a good amount of control over how the image in question should be compressed. Use this compression for general color or grayscale images.
- Deflate - A lossless compression using Huffman and LZ77 techniques and also supports different bit depths.
There is no definitive answer to FormSuite’s varied performance because it must use heuristic matching methods which do not always give the same results for each form set and settings. ScanFix and FormFix provide several tools to help optimize for your formsets. Here are some tips to solve some common cases.
- No matches found
ScanFix provides methods such as despeckling, deskewing, and binarizing that assist with matching. Lowering the minimum match confidence in FormFix may also assist matching, but may introduce false-positives.
- Forms are being matched to incorrect pages
In this case, try adding cleanup objects that remove borders, blobs, or lines, which could cause two different forms to look similar. For example, line removal can help identification because straight lines can overpower other features in the form, such as text, causing false matches with other forms.
- Forms are being matched upside down or rotated If you know forms are always going to be rightside-up, you can disable checking rotated matches with the FormFix IdentificaitonProcessor "IdentifyRotated" properties.
There are a number of cleanup operations that you can use to make an image more suitable for a particular application. What you observe visually on the image and how you perceive its impact on your project is the most important. For example, if you’re noticing very many random specks on your image, and you’re planning to use OCR, then you may want to try a depseckle or blob removal operation first. If the content in your image looks a bit slanted, you could try a deskew or rotate operation. In some cases, using a line removal operation on forms that have grid fields could be helpful also. The amount of image cleaning you may need to do can very from project to project. There’s not a one shot cleaning operation that will always work for all images. But, observe the nature of the noise and interference in your images to determine what general parameters appear to provide the best results.
This is likely because the processor has not been initialized with the file name of the formset. Change the initialization to something like this: Processor processor = new Processor(formSetFile, AccuComponent.GetLicenseKeychain(), true);
One possibility is that you have strict firewall settings that are preventing our License Manager from connecting with licensing.accusoft.com, our licensing server. In order to connect with licensing.accusoft.com, you'll have to make an exception in your firewall for our License Manager so that it can connect to licensing.accusoft.com on port 80 for http and port 443 for https.
There are a couple reasons why a license might stop working. The most common would be if the MAC addresses changed (on a virtual machine, or after significant hardware change). Additionally, a temporary two week license can be put on a machine via the Server Licensing Utility if there are no licenses available when you license a machine. Feel free to contact us at email@example.com if you have additional questions. If you want a new license please contact firstname.lastname@example.org.
If you are receiving a "80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))." error while trying to use the LDK on a website created through IIS, it is likely because of a platform conflict (x32 vs x64). To fix it, try checking (or unchecking) "Enable 32-Bit Applications" for the App Pool associated with the website.
There are a few reasons why this might happen:
- You have licensed your machine with a runtime/deployment license and you are not calling the SetSolutionName and SetSolutionKey methods in your code. By default, Accusoft products will look for a license in the registry at this path:
HKEY_LOCAL_MACHINE\SOFTWARE\Accusoft\Licensing\Accusoft. However, for runtime licenses, they are stored at
HKEY_LOCAL_MACHINE\SOFTWARE\Accusoft\Licensing\YourSolutionName. So, when you call SetSolutionName, that tells your application to look in the correct directory to find the runtime license. You can find the necessary parameters for these methods on the customer portal customer portal.
- You did not successfully install a license on your machine and the temporary license installed has expired. If you use the SLU (Server License Utility) or the LDK (License Deployment Kit) to license your machine and it fails, a temporary 14 day license will be placed on your machine. When that expires, you'll no longer be able to use the product. If this happens, you'll need to run the SLU or try using the LDK again. If that doesn't work, you might want to try licensing your machine in offline mode.
- You are trying to use a development license and you are calling SetSolutionName and SetSolutionKey in your code. You should only call SetSolutionName and SetSolutionKey in your code when you are deploying your application and using a deployment license. When you install a development license on your machine, it is placed into the registry at the following path: "HKEY_LOCAL_MACHINE\SOFTWARE\Accusoft\Licensing\Accusoft". When you call SetSolutionName in your code, you are telling the control to look for a license at a different path: HKEY_LOCAL_MACHINE\SOFTWARE\Accusoft\Licensing\YourSolutionName. If you are calling SetSolutionName and SetSolutionKey while trying to use a development license, simply comment out those lines for now.
- The license information you've entered might be wrong. Check on the customer portal to make sure you've got the values parameters for the SetSolutionKey and SetSolutionName correct.
This error happens if a particular deployment machine doesn't have the COMDLG32.OCX file registered. To fix this: 1. Install the comdlg.ocx dependency, if not available on the target machine. If the comdlg.ocx is not present on the system than it will need to be obtained from a system that has it (it should be available on your development machine in the directory mentioned in step 2). 2. Place the file in the C:\Windows\System32 folder. (C:\Windows\SysWOW64 on a 64 bit machine) 3. Register the DLL via the regsvr32.exe command. 4. You should see a successful message and then be able to proceed with the licensing installation.