What is ScanFix Xpress?

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
What is ScanFix Xpress?
See Also Send Feedback |
Introduction > What is ScanFix Xpress?

Glossary Item Box

ScanFix® Xpress Version 6 improves image quality and increases content recognition accuracy by applying image processing and enhancements to color, grayscale, and black and white images.

ScanFix Xpress provides brightness/contrast correction, clean up of noisy colors, color detection, color drop out or color extract, plus many additional image cleanup features. Remove lines and dot shading, smooth and repair characters, and eliminate unnecessary borders.

An Auto Binarize operation easily converts images from color or grayscale to black and white. ScanFix Xpress includes the ImagXpress component, and integrates easily with other Accusoft Pegasus components to create document capture systems.

New Features in Version 6

  • Image cleanup on color and grayscale as well as bitonal images
  • Automatic color detection help optimize archive space
  • 64-bit AnyCPU support available for .NET development
  • Brightness and contrast adjustment on color and grayscale images
  • Drop or extract specified colors from an image
  • Filter images 10 ways, including Gaussian, LaPlacian, Average, Unsharp, and more
  • Reduce color noise and variation with Image Detergent®
  • Emulate a dropout scanner with Virtual Bulb®
  • Improved automatic binarization of color and grayscale images

Primary Features

  • Fast and effective image cleanup on bitonal, grayscale, and color images.
  • Color detection, brightness/contrast adjustment, color drop, noise reduction, and various filters applied to 24-bit and 8-bit images.
  • Deskew, auto-negate, auto-border crop, image registration, blank page and blank rectangle detection, flip, dilate, erode, mirror, rescale, rotate, and shear applied to 1-bit, 8-bit and 24-bit images.
  • Despeckle, line removal, blob and hole removal, dot shading removal, correction of inverse text, and comb removal applied to 1-bit images.
  • Confidence reporting on clean up results.
  • Save batch processing instructions to support application workflow among other components including FormFix, FormDirector, SmartZone, and Barcode Xpress components.
  • Seamlessly integrate with other Accusoft Pegasus components, including ImagXpress, Notate Xpress, TwainPRO, PrintPRO, ImageGear and others.

ScanFix Xpress Editions

ScanFix Xpress is offered in two editions:

  • ScanFix Xpress ActiveX - supports development in ActiveX/COM development environments, and deploys to 32-bit processors and to 64-bit processors as 32-bit applications.
  • ScanFix Xpress.NET - supports development in .NET/C#/VB.NET development environments, and deploys to 64-bit and 32-bit processors as AnyCPU-compiled applications.

Accusoft Pegasus Components Shipped with ScanFix Xpress

  • ImagXpress® for advanced image enhancement and clean up.
  • NotateXpress™ for adding image annotations.
  • PrintPRO™ for printing.
  • ThumbnailXpress™ to view thumbnail images.
  • TwainPRO™ to acquire images from TWAIN devices.

See Also

Getting Support
Software License Agreement
Operating Requirements

©2009. Pegasus Imaging Corporation, DBA Accusoft Pegasus. All Rights Reserved.


Getting Support
See Also Send Feedback |
Introduction > Getting Support

Glossary Item Box

Getting Support

Benefits of Registering your Development Kit

Purchasers of development kits need to register with Accusoft Pegasus in order to be notified of updates and receive support now or in the future. Registration is automatic when purchased directly from the Accusoft Pegasus web site. If purchased through a Accusoft Pegasus re-seller, please register your purchase by filling out the form at www.accusoft.com/registration.htm.

Vehicles for Support

Samples

Samples are included in the downloaded installation.

The product installation program installs a common sample folder accessible via the Start Menu.

Samples for the ActiveX framework:

  • Visual Basic 6.0
  • Visual C++

Access the Samples

  • Through the Windows Start menu: Start | Programs | Accusoft | ScanFix Xpress 6.0 | Samples
  • Sample image files are included

Web Support

Visit the Accusoft Pegasus web site frequently asked questions page ( www.accusoft.com/faq.htm ) for the fastest answers to common questions. The web site also provides other support options that are accessible at www.accusoft.com/supportagree.htm.

E-mail Support

Both pre-sale and post-sale e-mail support is offered free of charge. Questions are answered on a First-Come-First-Served basis. Support@accusoft.com responds instantly to e-mail received with a helpful set of locations to find additional information on Accusoft Pegasus products including FAQ's, sample code, and other current information pertaining to the use of the products. The support request is then added to the queue of outstanding requests. The goal of the support team to respond to each e-mail within 1 business day.

The sales team is always available as a backup to the support team. If you feel you have an urgent support or sales issue please contact Sales@accusoft.com . They will assist you promptly.

On-Demand Phone Support

On-demand priority phone support can be purchased in 15 minute increments with a credit card via the Accusoft Pegasus web site Support, General Info page. If you decide to purchase "on-demand" phone support, instructions will immediately be e-mailed upon receipt of your purchase.

On-demand priority phone support can be purchased in 15 minute increments with a credit card via the Accusoft Pegasus web site Support, General Info page. If you decide to purchase "on-demand" phone support, instructions will immediately be e-mailed upon receipt of your purchase.

Additionally, Accusoft Pegasus offers three support plans for those customers whose commercial products or projects are sensitive or critical in nature, where immediate response and 'latest release' code are important.

1. Chariot Support

All Accusoft Pegasus customers are given the opportunity to purchase a Chariot Support agreement. This is a maintenance and upgrade agreement that entitles customers to priority e-mail service, direct phone support from the support and development staff and free product upgrades for the covered products. Since upgrades are included for Chariot customers at no additional charge, Chariot customers can frequently save money, plus obtain the benefits of phone and expedited support. Accusoft Pegasus reserves the right to change the terms of this service at any renewal period. Contact Sales via the web at www.accusoft.com/contactform.htm.

2. Galleon Support

Customers are given the opportunity to purchase Galleon Support for Accusoft Pegasus products that are applications and for products that require Run Time licensing. Galleon Support includes licensing of product upgrades for deployed installations at no additional license fee cost. Accusoft Pegasus reserves the right to change the terms of this service at any renewal period. Contact Sales via the web at www.accusoft.com/contactform.htm.

3. Atlas Support

All Accusoft Pegasus customers are given the opportunity to purchase an Atlas Support agreement on currently supported products. This is an agreement that entitles customers to priority e-mail service and direct phone support from the support and development staff. It differs from Chariot Support in that it does not include version upgrades free of charge. Accusoft Pegasus reserves the right to change the terms of this service at any renewal period. Contact Sales via the web at www.accusoft.com/contactform.htm.

For the latest and most up-to-date support information, access www.accusoft.com/contact.htm .

See Also

Operating Requirements
Trial Mode
Installing on a Development Machine


Pegasus Imaging Corporation, DBA Accusoft Pegasus

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Pegasus Imaging Corporation, DBA Accusoft Pegasus
See Also Send Feedback |
Introduction > Pegasus Imaging Corporation, DBA Accusoft Pegasus

Glossary Item Box

Accusoft Pegasus is the largest single source provider of imaging software development kits (SDKs) and image viewers. Features include barcode, compression, DICOM, editing, forms processing, OCR, PDF, scanning, video, and viewing. Technology is delivered for multiple platforms and development environments.

Whether you’re building new applications or enhancing existing workflows, Accusoft Pegasus Software Development Kits (SDKs) get you there faster. Our mission is to help you seamlessly and quickly integrate superior imaging functionality into your application. We provide very generous support from our software engineers, unlimited downloads and trial licensing that won’t time out, and full access to all product features prior to purchase. When you need imaging, we’ve got your code.

Visit www.accusoft.com for product descriptions, downloads, demos, support FAQ's, and licensing information.

Accusoft Pegasus
4001 North Riverside Drive
Tampa, FL 33603
Sales: 813-875-7575

Copyrights & Trademarks

Accusoft, ColorDrop, ColorEnhance, ColorFind, ColorForms, CompressDirector, Digital Mark Recognition (DMR), FormFix, Image Detergent, ImageGear, ImagXpress, NetVue, ScanFix, Pegasus, Prizm, ViewDirector, Virtual Scoring Center (VSC), and the Pegasus Horse Logo are registered marks (®) of Pegasus Imaging Corporation, DBA Accusoft Pegasus.

Barcode Xpress, CapturePRO, FilePrinter, FormAssist, FormDirector, FormSuite, ISIS Xpress, The JPEG Wizard, MICR Xpress, MedXpress, NotateXpress, OCR Xpress, PDF Xpress, PICTools, ePIC, PICVideo, PrintPRO, SmartScan Xpress, SmartZone, ThumbnailXpress, TwainPRO and the Accusoft Pegasus Logo, are trademarks (™) of Accusoft Pegasus.

Accusoft Pegasus and/or its agents use these marks and brand names in connection with its goods and/or services, in the United States and other countries. Information in this document is subject to change without notice. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Accusoft Pegasus.

ScanFix Xpress utilizes technology owned by Pegasus Imaging Corporation that is protected by U.S. Patents 5,579,414; 5,590,224; 5,594,814; 5,594,815; 5,594,817; 5,625,719; 5,778,103; 5,729,635; and U.S. Patents Pending.

Microsoft, Microsoft.NET, Silverlight, Visual Basic, Visual Studio and Visual Studio.NET are trademarks of Microsoft Corporation in the USA and/or other countries. All other product and brand names are the property of their respective owners.

See Also

What is ScanFix Xpress?
Software License Agreement


Operating Requirements
See Also Send Feedback |
Getting Started > Operating Requirements

Glossary Item Box

Operating Requirements

Operating Systems

ScanFix® Xpress runs on supported Microsoft Operating Systems:

  • Windows 2000 Professional
  • Windows XP, XP Professional
  • Windows Vista
  • Windows 7
  • Windows Server 2000
  • Windows Server 2003
  • Windows Server 2008
ScanFix Xpress works with 32-bit Windows versions on 32-bit and 64-bit processors. It runs in 32-bit executables running under 64-bit XP, Vista, Windows Server 2000, Windows Server 2003, Windows Server 2008, and Windows 7.

Threading

ScanFix Xpress is a synchronous or asynchronous multi-thread control. Accusoft Pegasus considers thread-safe to be when an application using this component can use multiple controls running in the same process, where they don't interfere with each other. The thread creating the control owns the control and is the only thread that can interact with it.

There is also a ScanFix Xpress .NET Windows Forms control.

Development Environment

  • ScanFix Xpress can be used in any development environment that hosts ActiveX/COM controls.

See Also

Getting Support
Installing on a Development Machine
Run Time Licensing


Installing on a Development Machine
See Also Send Feedback |
Getting Started > Installing on a Development Machine

Glossary Item Box

Installing on a Development Machine

To Install ScanFix® Xpress Component

Run the downloaded setup program which installs the development kit on your development machine.

The downloaded development kit includes code samples for supported platforms. Samples are available through:

Start | Programs | Accusoft | ScanFix Xpress menu.

By default this will register trial licensing which allows you to develop applications but not to distribute them. The trial license allows testing of all the functions and features.

Please see the section Distributing ScanFix Xpress to understand the limits and details to convert licensing editions.

In order to distribute your finished application you must purchase and install a fully paid license from Accusoft Pegasus. Paid licenses override trial licenses.

To Use ScanFix Xpress Help File

Stand-alone Help File

You will have access to the following stand-alone help file:

  • Accusoft.ScanFixXpress6.ActiveX.chm

Access the ScanFix Xpress stand-alone help through the Windows Start menu: Start | Programs | Accusoft | ScanFix Xpress

The stand-alone file is created with MS Help system version 1. To view stand-alone help files, you must have:

  • Windows 2000 (to view the file via the Windows HTML Help Viewer)
  • Internet Explorer 4 or higher
  • MS HTML Help Viewer

See Also

Operating Requirements
Run Time Licensing
Development Mode
Software License Agreement
Distributing ScanFix Xpress


Use ScanFix Xpress in Visual C++

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Use ScanFix Xpress in Visual C++
See Also Send Feedback |
Getting Started > Use ScanFix Xpress in Visual C++

Glossary Item Box

Use ScanFix® Xpress in Visual C++

Importing a Control into Visual C++

Importing a control via the #import directive is a simple process. The #import directive line can be added to the stdafx.h file to provide the appropriate functionality to all source files in the project.

C++ Example Copy Code
// stdafx.h : include file for standard system include files,
// or project specific include files that are used frequently, but
// are changed infrequently
//
#pragma once
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxdisp.h> // MFC Automation classes
#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC support for Windows Common Controls
#endif // _AFX_NO_AFXCMN_SUPPORT
//***Import the ScanFix and ImagXpress DLL's here
#import <Accusoft.ScanFixXpress6.ActiveX.dll>
#import <PegasusImaging.ActiveX.ImagXpress9.dll>
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

The #import directive simply points to the ScanFix Xpress control. When the ScanFix Xpress control is imported with the #import directive, the compiler produces 2 files – a .tli and a .tlh file – that together create the necessary COM wrapper for the control’s properties and methods. Since the directive is in your stdafx.h file, the wrappers are immediately available to your other modules. The wrapper code defines COM smart pointers for all control interfaces. To use this COM object, you simply create an instance of the interface you want and then call methods directly by using this instance pointer.

Declare a Pointer to the COM Object

After the #import directive is specified, declare a pointer to the ScanFix Xpress COM object. In the ImageCleanup project, the pointer is called and it is implemented in the ImageCleanupDlg.h file as follows:

C++ Example Copy Code
// This code demonstrates how the pointer is declared and implemented in the ImageCleanupDlg.h file
#pragma once
// Include the necessary files and namespaces for the COM controls
using namespace AccusoftScanFixXpress6;
#include "..\Include\scanfix6events.h"
using namespace PegasusImagingActiveXImagXpress9
//////////////////////////////////////////////////////////
// CImageCleanupDlg dialog class
class CImageCleanupDlg : public CDialog
{
// Construction
public:
CScanFix *ppCScanFix; // Pointer to the CScanFix class defined in scanfix6events.h
Iscanfix6Ptr pScanFix; // Pointer to the ScanFix COM object
//Pointer to the ImagXpress objects
IImagXpressPtr pImagXpress1;
IImagXpressPtr pImagXpress2;
CImageCleanupDlg(CWnd* pParent = NULL);// standard constructor
// ...
// Remainder of class declaration deleted here –see provided sample code
// ...
};

The ScanFix6events.h file contains the CScanFix Xpress object. The CScanFix Xpress object is used to create a ScanFix Xpress COM object and handles ScanFix Xpress events. Currently ScanFix Xpress does not have any events, but the file provides a place holder for future enhancements.

Initialize COM

The COM library must be initialized before COM functions can be called and it must be closed before the program exits. This is illustrated in the ImageCleanup.cpp file as follows:

C++ Example Copy Code
// This code from ImageCleanup.cpp demonstrates how the COM library must be initialized
BOOL CImageCleanupApp::InitInstance()
{
//**Must called CoInitialize here **
CoInitialize(NULL);
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
#ifdef _AFXDLL
Enable3dControls();// Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic();// Call this when linking to MFC statically
#endif

CImageCleanupDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
//**Must call CoUninitialize here **
CoUninitialize();
return FALSE;
}

Create the ScanFix Xpress COM Object

You need to create an instance of the ScanFix Xpress COM object. After the object is created, you can use the object’s properties and methods to integrate ScanFix Xpress features into your application.

In the ImageCleanup project, the COM object is created in the ImageCleanupDlg.cpp file as follows:

C++ Example Copy Code
// This code demonstrates how the ScanFix Xpress COM object is created.
// This code is from the OnInitDialog() method in ImageCleanupDlg.cpp
//*****Create a SF Object here ***
HINSTANCE hDLL2 = SF_Open();
// Create a ScanFix object. The ScanFix object automatically creates a ScanFix Xpress COM object.
ppCScanFix = new CScanFix((DWORD) this, 1);
pScanFix = ppCScanFix->pScanFix;
SF_Close(hDLL2);

The SF6_Open.cpp file installs in the ScanFix Xpress VC++\Include directory. This file contains 2 functions SF_Open and SF_Close. These function calls are required to properly register and license the ScanFix Xpress COM object an only need to be called once. You must issue a SF_Open prior to creating the first ScanFix object and you must issue a SF_Close anytime after the first ScanFix object is created.

Before you distribute applications that use the ScanFix Xpress COM object, you need to edit the SF6_Open.cpp file and change the unlock license codes passed to the UnlockRuntime function. Obtain the unlock license codes from Accusoft Pegasus.

Use the ScanFix Xpress COM Object to Set Properties and Call Methods

After an instance of the ScanFix Xpress COM object is created, the object can be used to set ScanFix Xpress properties and call ScanFix Xpress methods. This code comes from the Process function in the ProcessingDlgDeskew.cpp file:

C++ Example Copy Code
// Create options object
CComPtr<IDeskewOptions> deskewOpts;
HRESULT hr = deskewOpts.CoCreateInstance( __uuidof(DeskewOptions), 0,
CLSCTX_INPROC_SERVER );
if (SUCCEEDED(hr))
{
// Set options object properties
deskewOpts->put_maintainOriginalSize( m_MaintainOriginalSize.GetCheck() ==
BST_CHECKED );
deskewOpts->put_minimumCorrectableAngle( (double)(m_ctlMinFixAngle.GetPos() /
100.0) );
deskewOpts->put_minimumConfidence( (long)m_ctlMinConfidence.GetPos() );
deskewOpts->put_quality( (long)m_ctlQuality.GetPos() );
deskewOpts->put_padColor( m_olePadColor );
// Create results object
CComPtr<IDeskewResults> deskewRes;
HRESULT hr2 = deskewRes.CoCreateInstance( __uuidof(DeskewResults), 0,
CLSCTX_INPROC_SERVER );
if (SUCCEEDED(hr2))
{
CWaitCursor hourglass;
// RUN: Deskew
deskewRes = pScanFix->Deskew( deskewOpts );
// Check results object properties
if (deskewRes->imageWasModified)
return true;
}
}
return false;

Delete the ScanFix Xpress COM Object

The ScanFix Xpress COM object must be deleted when it is no longer needed. The object is usually deleted before the application exits. In the ImageCleanup project, the COM object is deleted in the ImageCleanupDlg.cpp file as follows:

C++ Example Copy Code
// This code demonstrates how to delete the ScanFix Xpress COM object
void CImageCleanupDlg::OnDestroy()
{
//**Set the ScanFix object to NULL and delete the COM object**
if (pScanFix)
{
pScanFix = NULL;
if (ppCScanFix)
{
delete ppCScanFix;
}
}
}

See Also

Use ScanFix Xpress as an ActiveX Control


Use ScanFix Xpress as an ActiveX Control

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Use ScanFix Xpress as an ActiveX Control
See Also Send Feedback |
Getting Started > Use ScanFix Xpress as an ActiveX Control

Glossary Item Box

Use ScanFix® Xpress as an ActiveX Control

ScanFix Xpress can be used as an ActiveX control in development environments, like Visual Basic 6, that accept ActiveX controls. The following discussion assumes that your development environment is Visual Basic 6.

Creating an Application with Visual Basic 6 and ScanFix Xpress

  1. Add the ScanFix Xpress control to a project.
  2. Use the ScanFix Xpress control on a form.
  3. Write code that controls the ScanFix Xpress properties and methods.

Loading the ScanFix Xpress Control Involves Adding it to a Project

  1. Open the project that will use the ScanFix Xpress control. This can be a new or existing project.
  2. From the Project menu, choose Components. The Control window appears with a list of available controls.
  3. Select the ScanFix Xpress control (i.e., Accusoft ScanFix Xpress). Click the OK button.

Other Environments

The ScanFix Xpress control is supported by a variety of host environments. To use ScanFix Xpress in other environments, consult the development tool's documentation for information on how to use ActiveX controls. As soon as the control is loaded, the following things happen:

  1. The control becomes part of the current project.
  2. A new tool is added to the Toolbox. This tool is used to draw the ScanFix Xpress control on the form.

The new control can now be used as if it were a standard control. The ScanFix Xpress control has its own set of properties and methods which can be seen by using the Properties and Code windows.

See Also

Use ScanFix Xpress in Visual C++


Trial Mode
See Also Send Feedback |
Licensing > Trial Mode

Glossary Item Box

Trial Mode

Default Installation

The SDK should initially be installed using Trial Mode Licensing, which allows you to test features and functions, and develop applications but not distribute them. Downloading and installing ScanFix® Xpress in trial mode provides you with access to all features and functionality of the ScanFix Xpress product. E-mail support is available with the trial license.

When using the trial version of ScanFix Xpress, an evaluation dialog box will be displayed periodically. Applications built with a trial license can only be run on a computer that has ScanFix Xpress Licensing installed on it.

Changing Trial Mode Behavior

You have the flexibility to change the behavior of ScanFix Xpress in evaluation mode. Trial mode behavior can be set by setting the EvaluationMode property in the License object to one of these values:

  • TrialDialog (default value) – A dialog box will be displayed at the first use of ScanFix Xpress and periodically thereafter. This evaluation mode is suitable for use in applications that have a visible user interface.
  • Timeout – After a period of time the ScanFix control will stop working and will return errors. This evaluation mode is suitable for use in applications that do or do not have a visible user interface.
  • Watermark – The images produced by ScanFix Xpress will be stamped with the word “Evaluation”. This evaluation mode is suitable for use in applications that do or do not have a visible user interface.

Changing ScanFix Xpress Edition

Your ScanFix Xpress Control behavior can be changed by setting the LicenseEdition property in the License object to one of these values:

  • BitonalEdition - Cleanup for bitonal images only.
  • BitonalPlusColorEdition - Cleanup for bitonal, grayscale and color images.

See Also

Development Mode
Run Time Licensing
Software License Agreement
Getting Support


Development Mode
See Also Send Feedback |
Licensing > Development Mode

Glossary Item Box

Development Mode

To suppress the evaluation dialog box and deploy your application, or attain technical support (beyond e-mail), as well as future product updates and upgrade notifications, you must update from a trial version to a paid version of the ScanFix® Xpress development kit.

1. Purchase Development Kit(s)

To purchase licensing of the ScanFix Xpress development kit, use one of the following options:

  • Purchase online at www.accusoft.com.
  • Contact Sales via the web at www.accusoft.com/contactform.htm for more information.
  • Contact an Accusoft Pegasus reseller.

When the development kit is purchased, we e-mail a serial number & registration code to you. You need these codes to upgrade from trial to paid licensing.

2. Register the ScanFix Xpress Product

When you purchase ScanFix Xpress online or via Sales at www.accusoft.com/contactform.htm, your product ownership is automatically registered.

To register products purchased through a reseller, use the form found at www.accusoft.com/registration.htm.

See Getting Support and Samples for a discussion of benefits to providing your name to Accusoft Pegasus. We never sell our customer information.

If your registration information should change, visit www.accusoft.com/contact.htm for forms to update registration information.

3. Update Your ScanFix Xpress Product Version from Trial to Paid Licensing

Updating your ScanFix Xpress from trial to paid licensing will suppress the evaluation dialog box or watermark.

To Update Components from Trial to Paid Licensing:

  • Enter your new license codes using one of the following options:
    • Enter licensing information (serial number, registration code and personal registration information) during component installation while downloading the latest release from www.accusoft.com (the recommended approach).
    • Alternatively, licensing information (serial number, registration code and personal registration information) can be entered through the Visual Development Environment in response to the dialog display.

For more information on Run Time licensing, see the Accusoft Pegasus website for more detailed information regarding Run Times and Deployment Licensing.

See Also

Trial Mode
Run Time Licensing
Software License Agreement
Getting Support


Run Time Licensing
See Also Send Feedback |
Licensing > Run Time Licensing

Glossary Item Box

Run Time Licensing

All copyrights to Accusoft Pegasus development kits and software are retained by Pegasus Imaging Corporation, DBA Accusoft Pegasus. ALL RIGHTS RESERVED. Your use of any of Accusoft Pegasus software or run-times created with Accusoft Pegasus software is allowed under license terms granted by Accusoft Pegasus. It is the Licensee's responsibility to honor the terms of such license grants.

Locking Mechanism

ScanFix® Xpress contains a locking mechanism that does not permit you to distribute applications created with evaluation versions of ScanFix Xpress. Prior to distributing an application that utilizes ScanFix Xpress, you must purchase and enable run-time licensing via the UnlockRuntime method.

Web Application Licensing

If the application will be deployed on the web, then web deployment must be purchased. Specific instructions for obtaining and using web unlock codes are provided in the email received with each successful purchase. You will use the code obtained to enable web application licensing via the UnlockWeb method.

Obtaining Appropriate Licensing

The Licensee is required to purchase one copy of our development kit(s) for each developer in addition to obtaining the appropriate license agreement prior to deploying applications which contain Accusoft Pegasus code.

Accusoft Pegasus software applications and development tools are limited for use on a single CPU. Any runtimes or copies created must be granted by a direct license from Accusoft Pegasus. These "end user" licenses provide the terms and limits of number and usage.

All prospective customers have every opportunity to evaluate Accusoft Pegasus products prior to purchasing. Product licensing is priced to cover what is considered to be normal (and even high) use. In addition, Accusoft Pegasus fully supports and warrants its code and pricing reflects those costs as well. The larger and more valuable an application deployment is, the higher the support and warranty risk is for Accusoft Pegasus.

Review the licensing categories, and select the one that matches your deployment. Special circumstances should be discussed with an Accusoft Pegasus representative.

For more information on Run Time licensing, see the Accusoft Pegasus website for more detailed information regarding Run Times and Deployment Licensing.

See Also

www.accusoft.com
Getting Support
Development Mode
Software License Agreement
Distributing ScanFix Xpress


Software License Agreement
See Also Send Feedback |
Licensing > Software License Agreement

Glossary Item Box

Software License Agreement

GRANT OF LICENSE

This Pegasus Imaging Corporation DBA Accusoft Pegasus ("PEGASUS") Agreement ("License") grants LICENSEE ("LICENSEE") a non-exclusive and non-transferable right to use one copy of a properly registered Pegasus Development Toolkit ("TOOLKIT") for development purposes on any single computer, provided the TOOLKIT is in use on only one computer at any time. TOOLKIT is "in-use" on a computer when it loads into temporary memory (that is, RAM) or installed into the permanent memory (that is, hard disk, CD-ROM, or other storage device) of that computer. The TOOLKIT is not to be used on a site-wide basis, via a server or other networked connection.

REDISTRIBUTION OF THE TOOLKIT RUNTIMES

PEGASUS does not grant LICENSEE any rights to deploy, license, sell or otherwise distribute runtime licenses with the TOOLKIT purchase. For Runtime Licensing information, please visit our web site (www.accusoft.com/licensing.htm), or contact our sales staff. LICENSEE agrees to notify PEGASUS immediately of any violations or changes in status.

In the event that PEGASUS grants LICENSEE a right to use, reproduce, display or otherwise distribute or transfer copies of TOOLKIT runtimes, LICENSEE agrees to acknowledge and uphold the terms and conditions of this Agreement. In such events, LICENSEE may distribute TOOLKIT runtimes as part of the LICENSEE's software application or derivative works ("PRODUCT") upon agreeing to the following:

a) LICENSEE’s PRODUCT shall not compete to any degree with the TOOLKIT. Such competitive PRODUCTS are defined as imaging software development toolkits intended for use by application programmers and/or system integrators.

b) LICENSEE’s PRODUCT must be substantially greater in scope with greater functionality and features than those of the TOOLKIT.

c) LICENSEE will not use PEGASUS' name, logo, or trademarks to market PRODUCT without prior written approval of PEGASUS.

d) LICENSEE agrees to indemnify, hold harmless and defend PEGASUS from and against any claims or lawsuits, including attorney's fees, which arise or result from the use or distribution of PRODUCT.

e) LICENSEE agrees to only distribute the TOOLKIT runtimes. No license or other rights are granted to LICENSEE for any distribution of the TOOLKIT development kit, documentation, source code, or the distribution unlock codes.

f) LICENSEE will only distribute the TOOLKIT runtimes on the hardware and operating system(s) for which the TOOLKIT runtimes are intended to be used.

g) LICENSEE will include a statement substantially similar to the following within derivative work's documentation and about box: "This product contains portions of imaging code owned by Pegasus Imaging Corporation, Tampa, FL, (www.accusoft.com). ALL RIGHTS RESERVED."

If ANY of the above terms are not applicable to LICENSEE'S situation, any of the above cannot be complied with, or LICENSEE needs modifications to this license for any reason, LICENSEE shall contact PEGASUS about obtain an expanded direct license from PEGASUS for derivative works, (available by phone at: 813-875-7575, x321, by e-mail at: Sales@accusoft.com or by fax at: 813-875-7705).

In the event that LICENSEE distributes one or more unlicensed TOOLKIT runtimes, PEGASUS reserves the right to charge the LICENSEE up to ten times the normal license price for each unlicensed copy of PRODUCT. LICENSEE agrees and acknowledges that this pricing shall be deemed liquidated damages for such unlicensed distribution and not a penalty.

This license grants rights to LICENSEE for only the PEGASUS code (TOOLKIT) mentioned above and does not convey any other rights of use or distribution to PEGASUS technology.

INTELLECTUAL PROPERTY

LICENSEE recognizes and acknowledges the exclusive right of PEGASUS in and to all patents, trademarks, service marks, trade names, copyrights, and other intellectual property and proprietary rights in and to the TOOLKIT, and that such patents, trademarks, service marks, trade names, copyrights, and other intellectual property and proprietary rights are the sole and exclusive property of PEGASUS and protected by United States law and by international treaties.

LICENSEE may not remove or alter the copyright notice from any copy of the Software or any copy of the written materials, accompanying the Software.

LICENSEE waives its right to contest any of PEGASUS’ patents, trademarks, service marks, trade names, copyrights, and other intellectual property and proprietary rights in and to the TOOLKIT.

LICENSEE shall not use such trademarks, service marks, and trade names except where permitted under this Agreement without receiving PEGASUS’ prior written approval of such use. If such approval is granted, LICENSEE’s right to use such trademarks, service marks, and trade names shall end upon the termination of this Agreement.

OTHER RESTRICTIONS

This PEGASUS License Agreement is LICENSEE's proof of license to exercise the rights granted herein and must be retained by LICENSEE.

LICENSEE may not rent, lease or transfer TOOLKIT or parts thereof. LICENSEE may not alter, modify, reverse engineer, decompile or disassemble TOOLKIT in any way or manner.

NO WARRANTY

ANY USE BY LICENSEE OF THE SOFTWARE IS AT THE LICENSEE'S OWN RISK. THE SOFTWARE IS PROVIDED FOR USE "AS IS" WITHOUT WARRANTY OF ANY KIND. TO THE MAXIMUM EXTENT PERMITTED BY LAW, PEGASUS DISCLAIMS ALL WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, PERFORMANCE RESULTS AND NONINFRINGEMENT. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE TOOLKIT IS WITH LICENSEE. PEGASUS IS NOT OBLIGATED TO PROVIDE ANY UPDATES TO THE SOFTWARE.

NO LIABILITY FOR DAMAGES

In no event shall PEGASUS be liable for any damages whatsoever (including, without limitation, incidental, special, direct, indirect and consequential damages, damages for loss of business profits, lost savings, business interruption, loss of business information, or other pecuniary loss) arising out of the use or inability to use this PEGASUS product, even if PEGASUS has been advised of the possibility of such damages. Because some states/countries do not allow the exclusion or limitation of liability for consequential, incidental or special damages, the above limitation may not apply to LICENSEE. In such states/countries and to the extent possible, any warranty is limited to thirty (30) days.

INDEMNIFICATION BY LICENSEE

If LICENSEE distributes TOOLKIT in violation of this Agreement, LICENSEE agrees to indemnify, hold harmless and defend PEGASUS and its suppliers from and against any claims or lawsuits, including attorney's fees that arise or result from the use or distribution of TOOLKIT in violation of this Agreement.

TERM AND TERMINATION

Unless otherwise agreed to by the parties, this Agreement shall become effective upon LICENSEE’s installation of the TOOLKIT and shall continue in full force and effect until terminated in accordance with the terms set forth in this Agreement.

Any material breach of this Agreement shall automatically and immediately terminate this Agreement. In the event that LICENSEE ceases to do business or is adjudged bankrupt or insolvent, PEGASUS may, at its sole option, terminate this Agreement, by giving ten (10) Business Days written notice of such termination, which notice shall identify and describe the basis for such termination.

In the event of any termination of this Agreement, LICENSEE shall stop using the TOOLKIT, manufacturing the PRODUCT and, if such distribution rights were granted by Pegasus, distributing the PRODUCT containing the TOOLKIT runtime licenses. LICENSEE shall also require its resellers, OEMs, and other distribution channels (if any) to likewise stop manufacturing and Distributing the PRODUCT. Within ten (10) Business Days thereafter, LICENSEE shall return or, at PEGASUS’ option, destroy the TOOLKIT and all copies in whole or in part thereof, whether or not incorporated in or with the PRODUCT, and within LICENSEE's possession, custody and control, and shall certify to PEGASUS in writing within ten (10) Business Days thereafter that it has complied with the foregoing obligation.

The portions entitled Intellectual Property, No Warranty, No Liability for Damages, Indemnification by Licensee, and Miscellaneous shall continue in full force and effect, notwithstanding any such termination of this Agreement.

MISCELLANEOUS

This Agreement constitutes the entire understanding and agreement between PEGASUS and LICENSEE regarding its subject matter, and supercedes all previous oral and written communications, agreements, memoranda, representations, or understandings between PEGASUS and LICENSEE regarding this Agreement. No other rights or licenses are granted to LICENSEE, except as expressly provided herein.

This Agreement shall not be amended, altered, changed or modified in any way, unless agreed to in writing by both PEGASUS and LICENSEE. Such writing must be executed by a duly authorized representative of PEGASUS and a duly authorized representative of LICENSEE.

This Agreement is not transferable or assignable by LICENSEE under any circumstances, without the prior written consent of PEGASUS. PEGASUS will not unreasonably withhold such consent. This agreement shall be binding upon, and is made for the benefit of, each party, its successors, and permitted assignees (if any). For the purposes of this Agreement, any change in control of LICENSEE shall constitute an assignment or transfer of this Agreement. As used in this section, a change in control is defined as (i) any change in ownership of more than fifty percent (50%) of the voting interest in LICENSEE, whether by merger, purchase, foreclosure of a security interest or other transaction, or (ii) a sale of all or substantially all of the assets of LICENSEE.

The relationship established by this Agreement between LICENSEE and PEGASUS shall be that of Licensor and Licensee. Nothing contained in this Agreement shall be construed as creating a relationship of agency, joint venture or partnership between LICENSEE and PEGASUS. Neither party shall have any right whatsoever to incur any liabilities or obligations on behalf of the other party.

The laws of the State of Florida shall govern this Agreement, excluding that body of law known as conflict of laws and the United Nations Convention on Contracts for the Sale of Goods. Any action or proceeding brought by either party against the other arising out of, or related to, this Agreement shall be brought only in a state or federal court of competent jurisdiction located in the State of Florida and the parties hereby consent to the personal jurisdiction of said courts.

The program and data contained in this TOOLKIT Product are provided with Restricted Rights. Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in FAR 52.227-14 (Alternate III) or subparagraph (c)(1)(II) of the rights in technical data and computer software clause at 252.227-7013. Manufacturer is Pegasus Imaging Corporation, 4001 Riverside Drive, Tampa, FL, USA 33603.

In the event that any provision of this Agreement is found invalid or unenforceable pursuant to a judicial decree or decision, the remainder of this Agreement shall remain valid and enforceable according to its terms.

PEGASUS’ failure to perform any term or condition of this Agreement as a result of conditions beyond its control such as, but not limited to, war, strikes, fires, floods, acts of God, governmental restrictions, power failures, or damage or destruction of any network facilities or servers, shall not be deemed a breach of this Agreement.

In the event of suit or any legal action due to any breach of this Agreement is commenced to enforce this Agreement or otherwise relating to this Agreement, the prevailing party shall be entitled to all attorneys’ fees and costs incurred in connection therewith.

The headings provided in this Agreement are for convenience and reference purposes only. In the event of a conflict between the terms and conditions listed in this Agreement, and the attached Schedules, the terms and conditions shall govern.

A waiver of a breach, violation, or default under this Agreement shall not be a waiver of any subsequent breach, violation or default. Failure of either party to enforce compliance with any term or condition of this Agreement shall not constitute a waiver of such term or condition.

All notices and communications shall be in writing and shall be deemed to have been duly given when delivered or three (3) Business Days after mailing by certified mail, return receipt requested, postage prepaid, addressed to the parties at their respective addresses set forth on the Order Form or at such other addresses as the parties may designate by written notice in accordance with this section.

For questions concerning this Agreement, or to contact PEGASUS for any reason, please contact Pegasus Imaging Corporation by phone at 1-813-875-7575 x321 or email Sales@accusoft.com.

See Also

Trial Mode
Development Mode
Run Time Licensing
Distributing ScanFix Xpress


Verify You Are Using the Latest Service Pack

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Verify You Are Using the Latest Service Pack
See Also Send Feedback |
Distributing Applications & Deployment > Verify You Are Using the Latest Service Pack

Glossary Item Box

Verify You're Using the Latest Service Pack

Service pack updates will not overwrite paid licensing. Your paid licensing will continue to work and you will not be required to re-enter your purchased registration codes. Service pack updates do not include any changes that might "break" previously developed and/or deployed code.

Verify Latest Development Components

To verify you are using the latest version of an Accusoft Pegasus Development Component or Components, please use the PegConnect utility program. Please note that a Help File for each product may be found on the Start Bar under Programs\Accusoft\ScanFix Xpress, or in C:\Windows\Help.

PegConnect is installed by all component product installers and is accessible through the Windows Start menu: Start | Programs | Accusoft | Common | Utilities

PegConnect Allows You To:

  1. Check with Accusoft Pegasus via online connection and verify that the installed version of the component includes all the most recent updates.
  2. Update to the latest version automatically with your permission.
  3. Determine if a control is registered or unregistered on the machine.
  4. Easily change the registration status from registered to non-registered, or non-registered to registered.

Alternatively, you can see the currently released product build numbers at www.accusoft.com/latestbuilds.htm.

If you require further assistance or have questions or comments, please see the section Getting Support for more detailed information.

See Also

Getting Support
Installing on a Development Machine


Distributing ScanFix Xpress

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Distributing ScanFix Xpress
See Also Send Feedback |
Distributing Applications & Deployment > Distributing ScanFix Xpress

Glossary Item Box

Distributing ScanFix® Xpress

Check for Proper Licensing and Unlock Codes

ScanFix Xpress contains a locking mechanism that does not permit you to distribute applications created with its evaluation versions. Prior to distributing an application that utilizes ScanFix Xpress, you must purchase and enable run-time licensing. If the application will be delivered on the web, you must also enable web application licensing.

DLL File to Distribute

After purchasing and registering the ScanFix Xpress ActiveX control, distribute the DLL file with applications using the ScanFix Xpress ActiveX component:

  • Accusoft.ScanFixXpress6.ActiveX.dll

Distributing your Application with the ScanFix Xpress ActiveX Control in Visual Basic & C++

Call the UnlockRuntime method of the ScanFix Xpress control where your program starts up and pass the 4 unlock codes as the parameters to the method.

For C++ Developers

If you are using the ScanFix Xpress COM control in C++, you must call the UnlockRuntime method as noted in the section above and edit the lpfnDllFunc1 function in the SF6_open.cpp file by adding the 4 unlock codes. Then just rebuild the C++ project.

Deploying for Web Applications

The Web Licensing FAQ on the Accusoft Pegasus site provides detailed information on web licensing.

See Also

Getting Support
Installing on a Development Machine
Development Mode
Run Time Licensing
Software License Agreement
Verify You Are Using the Latest Service Pack


Overview of ScanFix Xpress

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Overview of ScanFix Xpress
Send Feedback |
Concepts > Overview of ScanFix Xpress

Glossary Item Box

Overview of ScanFix® Xpress

ScanFix Xpress leverages powerful document image enhancement technology to improve quality and increase content recognition accuracy, on color, grayscale, and black and white images, in document imaging applications. ScanFix Xpress provides bitonal, color, and grayscale form enhancement and cleanup, preparing your data for the next steps in your form processing workflow.

ScanFix Xpress is delivered as a .NET or ActiveX SDK and offers:

  • Fast and effective image cleanup
  • Robust image editing
  • Efficient image processing
  • TWAIN scanning support
  • Confidence reporting on cleanup results
  • Seamless integration with other Accusoft Pegasus components
ScanFix Xpress is designed to work on images with high contrast data contents, such as black text on a white or mono-color background, or white text on a dark or black background. Images that do not exhibit this high contrast data, such as images containing photographs, may not benefit from ScanFix Xpress cleanup actions.

For an introduction to image processing, please read the following topics:

  • Bitonal Images
  • Continuous Tone Images
  • Colorspace Theory
  • Colorspace Use in ScanFix Xpress


Bitonal Images
Send Feedback |
Concepts > Introduction to Image Processing > Bitonal Images

Glossary Item Box

Bitonal Images

Bitonal images are images that use only two colors, black and white, to build up the image. Bitonal images are commonly encountered in document imaging, because text information is readily stored in bitonal format. Bitonal format provides excellent readability and efficient, lossless compression of document images, but also results in a number of limitations.

Documents are not always readily converted into clean bitonal images, and information that is presented in varying colors and shades of gray are often lost. Photographic content must be dithered or halftoned, resulting in much information loss. Bitonal images are also prone to produce artifacts when manipulated; rotating a line, for example, will result in a stair-step appearance, because it is not possible to interpolate the brightness of the pixels.

Some image processing operations, particularly ones that deal with grouping pixels together, work best in the domain of bitonal images. Bitonal images provide clearly delineated boundaries for pixel groups, and operations that remove such groups, such as despeckle, blob, line, and comb removal, are limited to the bitonal domain in ScanFix® Xpress.


Continuous Tone Images
Send Feedback |
Concepts > Introduction to Image Processing > Continuous Tone Images

Glossary Item Box

Continuous Tone Images

Continuous tone images are images that are stored in a format where there are many shades of brightness for each color component. Grayscale images and 24-bit color images are both continuous tone images; grayscale images contain 256 shades of brightness, while 24-bit color images contain 256 shades of brightness of red, green, and blue, which are mixed to create the full range of reproducible color. Continuous tone images preserve a much greater amount of information than bitonal images, as well as providing room for interpolation of pixel values when pixels are moved or scaled.

However, the jump from 1-bit per pixel to 8-bit or 24-bits results in a far greater image size than bitonal images, and the continuous tone format’s ability to store subtle differences in brightness makes the standard run length encoding used by lossless bitonal compression formats far less effective. Compression methods for continuous tone images typically attempt to break the image data down into curves or wavelets, and in the process discard information likely to be unimportant. At high compression factors, this process can also lead to the creation of artifacts, particularly around sharp, high contrast boundaries.

Some image processing operations, particularly ones that deal with color differences and brightness and contrast, work best in the domain of continuous tone images. Operations dealing with brightness and contrast work on any continuous tone image, while operations dealing with color aspects are limited to color images only.


Colorspace Theory
Send Feedback |
Concepts > Introduction to Image Processing > Colorspace Theory

Glossary Item Box

Colorspace Theory

A basic understanding of the function of the human eye is essential to understanding imaging technology, especially when applied to color images. The printing process, the capture process, image compression, processing techniques, and OCR are all attempts to do, by machine, what the human eye does naturally. Scanners, printers, and monitors are all designed to fit human vision, its resolution and three-color perception.

The human eye contains four types of light receptors; the rods, for general light sensing, and three types of cones that respond to different wavelengths of light, which we perceive as colors. This makes humans trichromats capable of seeing three dimensions of color. Other species’ eye’s differ; most mammals are dichromats, possessing rods and two types of cone, while many species of fish, reptiles, amphibians, birds, and even insects are thought to be tetrachromats, with four types of cones.

Click to Enlarge Click to Enlarge

Human color vision responds to wavelengths of light from approximately 680 nm, a shade of red, to 400 nm, a shade of violet. The rods are relatively insensitive to light, absorbing from about 20% of the incoming red and green light, down to a mere 2% of the incoming blue light. The rods, which absorb wavelengths from 400 nm to 700 nm, are far more sensitive than the cones, but see only in shades of gray. There are around 100 million rods, and only 7 million cones in the eye; however, the fovea, which is the center of the visual field, contains almost all cones. This concentration provides humans with better color perception than most other trichromatic mammals.

The function of the eye tells us a couple of things. First, color is very important, as the central field of vision is geared to perceive color. Second, the existence of three types of cones in our eyes means that our eyes can be fooled into seeing most colors by simply combining different amounts of red, green, and blue light, rather than having to produce all possible wavelengths between 400 nm and 700 nm.

The first tells us why color imaging is important, and the second tells us how it works. There are two theories of color perception, both proposed in the 18th century, and both of which are useful for understanding and dealing with color image data. The first is the trichromatic or tristimulus theory, which states that the three types of cones are responsive to red, green, and blue light, and the opponent process theory, which states that the eyes interpret light as red vs. green, blue vs. yellow, and white vs. black. The trichromatic theory is why monitors mix red, green, and blue light in varying amounts to generate all the producible colors. The opponent process theory is why the YIQ colorspace used by NTSC television encodes information in the form of black/white, red/green, and blue/yellow components.

The trichromatic theory is the basis behind the RGB colorspace used in many imaging applications. Display hardware mixes red, green, and blue light in varying amounts to generate the image you see. This direct mapping to the display hardware makes RGB very convenient, and simple file formats, such as the Windows Bitmap, typically use the RGB format for storage as well. CMY and CMYK colorspaces are closely related to the RGB colorspace, but are targeted at print media, which is absorbent rather than emissive, and uses different primary colors. However, since these colorspaces are oriented towards the image display or printing hardware, they are not an intuitive means of dealing with color, nor are they ideal for various image processing operations.

The largest difference opponent process theory based colorspaces have is that they all put the black/white line parallel to an axis, where RGB places it at a diagonal. Since a change in brightness is perceived by more than one type of cone, due to the overlap in sensitivity, the black/white axis is the most important.

Take for instance the YIQ colorspace, used by broadcast television in North America through the advent of digital television. The Y represented the black/white axis, the I an orange/blue axis, and the Q a purple/green axis. When broadcast, the Y component gets 4 MHz of bandwidth, the I component gets 1.3 MHz, and the Q component gets only 0.4 MHz of bandwidth. This system was designed specifically to minimize the amount of bandwidth needed to add color, while preserving the visual quality of the previously used black and white television. The orange/blue axis gets a far greater portion of the bandwidth than the purple/green axis, because the eye is more sensitive to changes along the orange/blue axis than it is to changes along the purple/green axis.

The JPEG compression method uses a similar system, YCbCr, with Y being black/white, Cb being blue/yellow, and Cr being red/yellow; the Cb and Cr components are typically downsampled 2:1 spatially (i.e. a 200 dpi JPEG has 200 dpi Y and 100 dpi Cb and Cr) which results in an immediate compression of 50%, even before the application of the DCT compression.

Click to Enlarge Click to Enlarge

Artists color models are also useful in dealing with color images. The HSV color model is an artists’ model, with V (for “volume” or “value”), representing the black/white axis, H representing the hue, and S representing the saturation, and is typically represented as a cone. This model dates back to the 18th century, and has been used by artists since, as it provides an easy means of understanding how basic colors are blended to generate a desired color.

Starting with a color on the perimeter of the base of the cone, white can be added to reduce the saturation, moving the color in towards the center, and black can be added to reduce the brightness, moving the color towards the point. In addition to providing an intuitive method for dealing with color, this property is also useful when dealing with scanned images, because the interaction between zones of color, black text, and white paper will result in changes in saturation and brightness, but remain a constant hue.


Colorspace Use in ScanFix Xpress

Accusoft.ScanFixXpress6.ActiveX | Accusoft Pegasus
Colorspace Use in ScanFix Xpress
Send Feedback |
Concepts > Introduction to Image Processing > Colorspace Use in ScanFix Xpress

Glossary Item Box

Colorspace Use in ScanFix® Xpress

RGB Colorspace

ScanFix Xpress stores color data in RGB format, and most operations that do not specifically involve color work in the RGB colorspace. The RGB format is also used by the Color Drop and Image Detergent functions, because the RGB colorspace is closer to perceptual uniformity than other simple colorspaces, such as YIQ and HSV, and because it is a close match to the abilities of the capture and display hardware. Color Drop and Virtual Bulb will both operate on spheres of color in the RGB colorspace.

Example of RGB Colorspace:

Click to Enlarge Click to Enlarge

HSV Colorspace

Virtual Bulb and Detect Color both operate in the HSV colorspace, as they are dependent on the concepts of hue and saturation. Viewing the HSV colorspace as a cube, they operate on rectangular sections of hue. In the HSV colorspace, changes in hue, saturation, or brightness are independent of each other; this independence allows for a simpler, more robust implementation of these features than would be possible working in the RGB colorspace.

Example of HSV Colorspace:

Click to Enlarge Click to Enlarge

Comparing RGB & HSV Colorspaces

Different colorspaces have different densities of color, which can be seen by a simple comparison of the RGB and HSV colorspaces. Values along the “V” axis, which represent pure grays, have a saturation of 0. At 0 saturation, the hue becomes irrelevant, so every gray value has 256 possible hues that will correspond to a single RGB value. When the brightness reaches 0, saturation ceases to matter as well. This means that any color with a 0 value for “V” in the HSV colorspace, of which there are 65,536 possibilities, corresponds to the single value 0, 0, 0 in the RGB colorspace.

A number of color operations use a 15-bit depth conversion, which greatly speeds up the colorspace calculations with minimal impact in quality. The difference in densities between colorspaces and the use of 15-bit color depths will result in some visible quantization of colors in machine generated images, but the level of quantization is low enough to be below the noise threshold on scanned images.

How Virtual Bulb uses Colorspace Theory

The Virtual Bulb operation uses a custom colorspace to provide a flexible color dropout method. A traditional dropout scanner works by using a monochromatic sensor, to record a gray image, and a bulb colored to match the drop-out form's ink. With a red ink, a red bulb would be used; the red parts of the page would reflect nearly 100% of the red light, as would the white parts, resulting in both red and white appearing as white in the gray image. Green, blue, and black would all absorb nearly 100% of the red light, resulting in black. The same effect can be emulated on a color scanner by using just the input from the red sensors.

Example of the Virtual Bulb Operation:

Click to Enlarge Click to Enlarge

The Virtual Bulb operation uses a custom colorspace that provides the ability to emulate a dropout scanner. In the simplest case, shown on the top right, Virtual Bulb works exactly like a dropout scanner would, generating a gray image equal to just the red values. However, unlike a dropout scanner, Virtual Bulb can warp the colorspace to achieve results not possible with a scanner. It can squeeze the colorspace, and shown on the lower left (radius of 1), or stretch it out, as shown on the lower right (radius of 884).

By doing this, the effective range of the dropout can be narrowed to an extremely tight band of pure reds, or spread out to encompass nearly the entire spectrum. The inner radius still goes to white, and the outer radius to shades of gray, although the ratio no longer looks like half and half. Any color can be dropped by rotating the spectrum to put a different color in the middle; 42 to drop yellow or 170 to drop blue. Stretching the colorspace a different direction will brighten the target hue to remove “shadows” from the final form (refer to the topic, I Have Forms Scanned in Color & Need to Remove Some Colors or Data).

To be consistent with the Color Drop and Image Detergent functions, the term "radius" is used when setting up a Virtual Bulb drop, and values of 1 to 884 are used for the radius (lower left is a radius of 1, lower right, 884). However, since the operation itself isn't done by actually setting a radius, but rather by warping the colorspace, the results will not be the same linear response. The function used in the colorspace warping generates an exponential curve, which will provide approximately linear results near 170, but increasingly less perceptible changes as the values approach 1 and 884.


Glossary

Accusoft.ScanFixXpress6.ActiveX Accusoft Pegasus
Glossary
Send Feedback

Glossary Item Box

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

A

Aliasing
Aliasing is the appearance of jagged lines caused by digital sampling of curves or diagonal lines. Aliasing is most prevalent in low resolution, low color depth images.

Anti-aliasing

Anti-aliasing is a process by which the effects of aliasing are reduced by blending the colors of pixels along sharp borders.

Artifact
An artifact is a shape that appears in an digitized image that was not in the original, but was created during sampling or image processing steps. The jagged edges produced by aliasing are a type of artifact caused by sampling, while the specks near edges in JPEG images are an artifact caused by the DCT compression algorithm.

Aspect Ratio

There are two kinds of aspect ratio that you need to be aware of when working with 2D images; the image aspect ratio and the pixel aspect ratio.

  • The image aspect ratio is the ratio of the width of the image to the height of the image.
  • The pixel aspect ratio is the shape of the pixels in the image. ScanFix® Xpress requires a pixel aspect ratio of 1:1, to prevent distortions from occurring during morphological operations. A 1:1 aspect ratio means having horizontal and vertical resolutions the same; if they are not, the image should be scaled before any morphological operations are performed.

Average Filter
See Box Filter.

B

Bitonal

A bitonal image is an image that consists of only two colors, black and white. Bitonal images are commonly dealt with in document imaging processing, because:

  • They provided the minimum amount of data needed to represent text.
  • They compress efficiently and losslessly.
  • They are readily broken down into groups of connected pixels which can be manipulated.

BMP
The Microsoft Windows Bitmapped file format is based on the Microsoft Windows internal bitmap data structures. The BMP format is very widely used and it is quick and easy to read. Although most BMP files are uncompressed, a type of run length encoding compression is supported.

Box Filter
Box filters are used for smoothing, and provide fast, aggressive smoothing to the image. A box filter, or average filter, is a convolution filter with a matrix of all 1's, which has the result of outputting the average pixel value for the window. However, large box filters also tend to produce visibly boxy results due to the use of a rectangular window.

BPP
Bits per pixel. The color depths supported by ScanFix® Xpress are: 1 bpp for bitonal images, 8 bpp for gray, and 24 bpp for color.

Brightness

The intensity of a pixel, usually expressed in the range of 0 (black) to 255 (white or fully bright color). Brightness of a color image may be defined in a number of ways, depending on the colorspace used.

C

CCITT
CCITT is the most widely used compression scheme for transmitting binary (black and white) image data. CCITT was established by the International Telegraph and Telephone Consultative Committee. The Group 3 and Group 4 CCITT compression standards are widely used for transmitting fax data. CCITT compressed images are typically stored in the TIFF image format.

Color Depth
The color depth of an image, expressed in bits per pixel (BPP), is the amount of space needed to store the information to describe the color of a single pixel. ScanFix® Xpress supports bit depths of 1, 8 and 24 BPP.

Color Space
A colorspace is a means of representing a set of colors, typically by mapping a subset of the realm of visible colors onto a three dimensional space so that each possible color can be represented by a set of three values. There are many different colorspaces which serve different purposes. ScanFix® Xpress uses the RGB (Red, Green, Blue) and HSV (Hue, Saturation, Value) colorspaces.

Comb
A comb is a set of boxes, with closed or open tops, that are used on forms, where each box is typically intended to be filled with a single character. The "teeth", or short vertical lines in the combs, are removed during the comb removal function, leaving only the contents of the boxes.

Container
The container for the component. An object implementing the IContainer interface that represents the component's container, or a null reference (Nothing in Visual Basic) if the component does not have a site.

Continuous Tone

A continuous tone image is one where all the colors in the gamut are evenly distributed, allowing blending of pixel values. Bitonal and paletted images are not considered continuous tone, but 8-bit grayscale and 24-bit color images are.

Contrast

Contrast is the difference between the darkest and the lightest valued pixels in a given region of an image. Contrast does not apply to bitonal images, which have only pure black and pure white pixels. Contrast is very important in color and gray images, because low contrast data can be difficult to read and process.

Convolution Filter
A convolution filter alters each pixel's color based on its current color and the colors of neighboring pixels within the filter window, using a matrix of values to determine the weight given to each pixel in the area. When a pixel is processed, its color value is multiplied by the coefficient in the center of the matrix, and any pixels within the window are multiplied by the corresponding coefficients in the matrix. The sum of the products, divided by the Divisor, provides the output value for the center pixel. The convolution filter is typically used for sharpening, softening, and edge enhancement.

D

DCT
A DCT, or discrete cosine transform, is a method of turning sampled data into a collection of cosine waves of varying frequencies. The DCT is most commonly used in the JPEG compression format, where it is used to convert blocks of pixels into waves, and then remove low amplitude elements that do not contribute significantly to the image. The remaining frequencies are stored, and by reversing the DCT, convert the waves back into pixel values can be used to reconstruct a visually similar image. The DCT is typically used as a lossy compression format, which yields very high compression ratios with little loss in quality of the restored image.

DCX
An image format containing multiple PCX images. A DCX file can contain a maximum of 1024 images.

DDB
Microsoft Device Dependent Bitmap. The actual in-memory information used to display an image.

DEP
Data Execution Prevention (computer security).

Depth, Color
See Color Depth.

Despeckle

A process intended to remove specks from an image. See Speck.

DIB
Microsoft Device Independent Bitmap. An alternative file extension used by the Microsoft Windows Bitmap.

DICOM
Digital Imaging and Communication, a standard for handling digital medical images.

Difference of Gaussian
See Unsharp Mask Filter.

Dilate
Dilate is an operation that "grows" objects in an image. In ScanFix® Xpress, the bitonal image processing definition is used, which means that the dilate operation makes black objects get larger, and white objects get smaller.

Dispose

Releases the resources used by the Component.

Dithering

A technique used in computer graphics to create the illusion of varying shades of gray on a monochrome display or printer, or additional colors on a color display or printer. See also Dot Shading and Halftoning.

DoG
See Unsharp Mask Filter.

Dot Shading
Dot shading refers to the use of halftoning or dithering to create an area of lighter color in a printed document. Dot shaded regions are commonly found in printed forms, and provide special difficulties in removal. ScanFix® Xpress offers a function designed specifically to remove the dots from dot shaded regions in bitonal images. For continuous tone images, a Gaussian filter will often convert dot shading into a solid color.

E

Eight-way Connected
Eight-way connected refers to a method of grouping bitonal pixels into an object. An eight-way connected object is one in which pixels that meet on the diagonals are considered connected. See also, Four-way Connected.

Erode
Erode is an operation that "shrinks" objects in an image. In ScanFix® Xpress, the bitonal image processing definition is used, which means that the erode operation makes black objects get smaller, and white objects get larger.

EXIF
Exchangeable Image File (Japan Electronic Industry Development Association, JEIDA), compressed image format used in digital cameras.

F

Float
Denotes a simple data type that stores 32-bit floating-point values.

Four-way Connected
Four-way Connected refers to a method of grouping bitonal pixels into an object. A Four-way Connected object is one in which pixels that meet on the top, bottom, or sides are considered connected, but diagonals are not. See also, Eight-way Connected.

Frequency
Frequency in imaging terms refers to the rate of change in value of a line of pixels. High frequency data consists of rapidly changing brightness or colors, while low frequency data consists of gradually changing brightness or color.

G

Gamut
All possible colors representable by a given colorspace and/or bit depth.

Gaussian Filter
A Gaussian filter is a type of convolution filter that uses matrix values generated using a Gaussian curve. Gaussian filters are used to smooth an image, and provide high quality results. However, Gaussian filters tend to be slower than other filters, such as the box filter, because a larger filter window needs to be used to provide the same degree of smoothing as, for example, the box filter.

GDI
Acronym for Graphical Device Interface. In Windows, a graphics display system used by applications to display or print bitmapped text (TrueType fonts), images, and other graphical elements. The GDI is responsible for drawing dialog boxes, buttons, and other elements in a consistent style on screen by calling the appropriate screen drivers and passing them the information on the item to be drawn. The GDI also works with GDI printers, which have limited ability to prepare a page for printing. Instead, the GDI handles that task by calling the appropriate printer drivers and moving the image or document directly to the printer, rather than reformatting the image or document in PostScript or another printer language.

GIF
Graphical Interchange File, originally developed by CompuServe as a machine independent format. GIF is one of the most popular image formats for storing 8-bit digitized images. GIF files are typically smaller than uncompressed formats like BMP due to the LZW compression algorithm that GIF uses.

Grayscale or Greyscale

A format of an image that contains only brightness information, but differs from bitonal in that it contains more than 2 colors. Grayscale images supported by ScanFix® Xpress use 8 bits of brightness information, for a range of 0 (black) to 255 (white).

H

Halftone

Pertaining to pictures in which gradation of tone in the photograph is reproduced by a graduated system of dotted and checkered spots, usually nearly invisible to the unaided eye, produced by the interposition between the camera and the object of a screen. The name alludes to the fact that this process was the first that was practically successful in reproducing the half tones of the photograph. Halftoning is often used for dot shaded regions in document images, and can be difficult to remove with despeckle algorithms because the halftone dots are often connected. ScanFix® Xpress provides a special dot shading removal algorithm to handle these cases. See also Dithering, Dot Shading.

High Pass Filter
A high pass filter is a filter that preserves high frequency information, while removing low frequency information. In imaging, high pass filters are used for edge detection and sharpening. See also Low Pass Filter, Frequency.

HSV
HSV is a colorspace consisting of three components called Hue, Saturation, and Value (or Volume). This colorspace is often used by artists, because it provides an easier and more intuitive means of describing color than most other colorspaces. The HSV colorspace is also used by a number of features in ScanFix® Xpress, where the separation of hue, saturation, and value are useful. See also Hue, Saturation, and Value.

Hue

One of the 3 components of the HSV color space. The hue represents where on the color wheel a color falls. While Hue is often represented with values from 0 to 359, indicating degrees of a circle, ScanFix® Xpress uses values between 0 and 255, so that the representation will fit in one byte of data.

I

Inverse
To reverse something or change it to its opposite. For example, to invert the colors on a monochrome display means to change light to dark and dark to light. In a digital electrical signal, to replace a high level by a low level and vice versa. This type of operation is the electronic equivalent of a Boolean NOT operation.

IOD
Information Object Definition.

J

Jaggies
See Aliasing.

JIF
An alternative image file extension used for a JFIF compliant JPEG file. Because many early versions of JPEG contained a JPG extension but did not adhere to the JFIF specifications, the JIF extension was created to identify JPEG files that are JFIF compliant. As the popularity of JPEG grew, JFIF compliance became synonymous with the JPG extension and thus the JIF extension is rarely used.

JPEG

The JPEG (Joint Photographic Experts Group) standard is one of the most important image data compression standards. It is widely used in many industries including graphic arts, desktop publishing, medical imaging, and many more. It is also becoming one of the most widely used image formats on the Internet. Although JPEG supports a lossless mode, it most commonly uses lossy compression, wherein a DCT is used to eliminate less important frequencies from the image. The lossy compression allows JPEG to achieve very high compression ratios with little visual impact, though at the pixel level it can result in a significant number of artifacts in the image.

L

Laplacian Filter
The Laplacian filter is a convolution filter that works as a high pass edge detection filter, detecting edges in all directions. See also High Pass Filter, Sobel Filter, Prewitt Filter.

Lossless Compression
Lossless compression is a compression method that preserves all the data in the original, so that the reconstructed image will be exactly the same as the original image. Lossless compression is very poorly suited to dealing the noise typically found in sampled continuous tone images, so it is usually reserved for simpler data such as bitonal images. Most bitonal TIFF compression formats are lossless formats.

Lossy Compression
Lossy compression is a compression method that discards relatively unimportant data during compression, so that the reconstructed image will be very similar, but not exactly the same as the original image. Lossy compression algorithms are very common when dealing with audio, video, and image data, as they provide extremely high compression with minimal loss in perceptible quality. Formats that can or do use lossy compression include the JPEG image format, MPEG video, and MP3 audio.

Low Pass Filter
A low pass filter is a filter that preserves low frequency information, while removing high frequency information. In imaging, low pass filters are used for smoothing. See also, High Pass Filter, Frequency.

LZW
A compression algorithm named after Abraham Lempel and Jakob Ziv (creators of Lempel Ziv compression) and LZW designer Terry Welch that makes use of repeating strings of data in its compression of character streams into code streams. It is also the basis of GIF compression.

M

Median Filter
A median filter is a filter that uses the statistical median value of a window of pixels to generate the output pixel. Median filters operate in a manner similar to high pass filters, but they have the advantage of preserving sharp edges, while eliminating high contrast specks far more effectively than a comparably sized box or Gaussian filter.

Morphology
Morphology means shape or form. In imaging, morphology refers to the shape of groups of pixels, and algorithms that can alter these shapes. An example of a morphological operation is dilate, which makes black objects get larger, or deskew, which rotates the image contents.

N

Negate

Negate reverses the brightness of each pixel in an image, creating a photo negative of the original image.

Noise

Noise is any data in an image that is considered irrelevant and obscures the desirable data in the image. Noise can take many forms, but the most common forms encountered in imaging are the result of either sampling issues or artifacts of processing performed on the image. Sampling issues are caused by dust or other foreign matter on the scanned document or scanner bed, or defects inherent in the document, such as highly textured paper or shaded regions that interfere with text recognition. Artifacts may be cause when thresholding, either on the scanner or by later processing software, produces dots out of shaded regions or sampled noise, or when lossy compression methods such as that used by JPEG results in specks surrounding sharp edges in the image.

O

Object
An object is any group of connected pixels in a bitonal image; objects in ScanFix® Xpress are generated using Four-way Connection. Objects are important in many ScanFix Xpress functions, such as despeck, blob removal, line removal, and color and blank detection.

Overscan
Overscan refers to the region outside the page but within the scanned region of a document image. Overscan may be black or white.

P

Palette
A palette is an indexed list of colors used to generate an image. Palettes are typically found in non-continuous tone color images, though some image formats, such as the BMP format, do not discriminate between 8 bit continuous tone gray images and 8 bit palette color images. ScanFix® Xpress only handles a limited set of paletted images; those which contain only black and white, and those which contain only 256 shades of gray.

PBM
Portable bitmap image format, a very simple uncompressed 1-bit (black and white) image format. Data can be stored in either binary or ASCII format.

PCX
The PCX image format was originally developed by ZSoft for PC Paintbrush. A version of PC Paintbrush called Microsoft Paintbrush is bundled with Microsoft Windows which established the importance of PCX support. The PCX format uses an RLE encoding scheme which attempts to reduce the size of the image, however, detailed images may result in negative compression which means the file size may be actually be larger after compression.

PGM
Portable Gray Map image format. PGM is a very simple uncompressed 8-bit grayscale image format. Data can be stored in either binary or ASCII format.

Pixel
A pixel, short for "picture element", is a single sampled value from a digital image. Document images are typically sampled at a resolution of between 100 and 300 pixels per inch (PPI).

PNG
Portable Network Graphics (pronounced "ping") provides a portable, legally unencumbered (royalty-free), well-compressed, well-specified standard for lossless bitmapped image files. The initial motivation for developing PNG was to provide a royalty-free alternative to GIF. The design retains many of the features of GIF that make it an attractive format for transmission of images, such as lossless compression and progressive display capabilities. Additionally, it provides several advantages including 24-bit image support and generally better compression, although decompression is typically somewhat slower than GIF. PNG's success will be ultimately determined by its acceptability on the Internet. At the time of this writing, however, PNG has not been incorporated as part of the major Internet browsers.

PPM
Portable Pixmap image format, a very simple uncompressed 24-bit image format. Data is stored in RGB triplets and can be stored in either binary or ASCII format.

Prewitt Filter
The Prewitt filter is a convolution filter used for detecting horizontal or vertical edges. Pixels corresponding to an appropriate edge will show as bright values in the output image, while non-edge pixels will show as dark. The Prewitt filter provides a strong response to horizontal or vertical lines, but less response to diagonals. See also, Sobel Filter, Laplacian Filter.

R

Resolution
The resolution of a digital image is the rate at which the original was sample, and in document images is expressed in terms of the number of pixels per unit of measure, typically pixels per inch (PPI). Document images are typically scanned at resolutions between 100 and 300 PPI.

RGB

Red, Green Blue. Bitmapped images are most generally stored as RGB data. Each pixel or data point in a true color (24-bit) image contains 3 components, red, green and blue, that describe the color of the pixel. Each of the components can have a value between 0 and 255, 0 being the darkest shade of color and 255 being the lightest shade of color. Since each component can be stored in one byte (8-bits), the 3 components take up 3 bytes or 24-bits per pixel.

RLE

RLE stands for Run Length Encoding. It is a lossless compression algorithm that only offers decent compression ratios in specific types of data, typically bitonal or continuous tone images with large regions of flat color.

S

Sampling
Sampling is the process of measuring values at certain intervals to generate a digital reproduction of an item. Images are sampled by breaking the image down into a rectangular grid of pixels, then measuring the color or brightness of each pixel.

Saturation

One of the 3 components of the HSV colorspace. Saturation controls the purity of a color. Higher saturations result in richer, deeper colors. Lower saturations add gray, resulting in paler colors. Saturation is expressed as a value from 0 to 255.

Sharpen

Sharpening is the use of a high pass filter to emphasize the high frequency elements of an image. Sharpening and smoothing are opposite operations, and most sharpening filters are created by subtracting a smoothing filter from a no-change filter. See also, Unsharp Mask Filter, High Pass Filter.

Size of an Image

The term "size" can refer to many things when applied to a digital image. These include:

  • Pixel size. This is the number of pixels in the image, either as a width times height, or as a total pixel count in megapixels. This size may be change by cropping or rescaling the image.
  • File size. This is the number of bytes of storage required by the image. This size can be greatly reduced by the use of compression and noise removal, or by reducing the color depth.
  • Print size. This is the size of the original document if printed at "actual size". This unit is obtained by by multiplying the pixel size by the resolution, and may be changed by altering the pixel size or the resolution.

Smooth
Smoothing is the process of de-emphasizing sharp, high contrast edges in the image, typically by using a low pass filter. Smoothing algorithms are often used to remove noise in continuous tone images. See also Sharpen.

Sobel Filter
The Sobel filter is a convolution filter used for detecting horizontal or vertical edges. Pixels corresponding to an appropriate edge will show as bright values in the output image, while non-edge pixels will show as dark. The Sobel filter provides a stronger response to diagonals than the similar Prewitt filter. See also, Prewitt Filter, Laplacian Filter.

Speck
A speck is small group of pixels that appear as high contrast noise. In bitonal images, specks usually appear is one or more black pixels, while in continuous tone images they may appear as any color that contrasts with the background. For bitonal images, specks may be removed by the Despeckle or dot shading removal algorithms, and for continuous tone images, a smoothing or median filter can be used.

T

TGA
Targa Image File format was developed by TrueVision for its Targa line of products. TGA is one of the earliest image formats and was the first popular format to support 24-bit color. TGA supports uncompressed and RLE compressed formats.

TIFF
Tag Image File Format, originally released by Aldus Corporation is a standard file format found in most paint, imaging, and desktop publishing programs. TIFF is extremely powerful, flexible, and extensible. However, because of its many nuances and its wide scope, TIFF can be a difficult format to understand as well as a difficult format to support. ImagXpress supports a wide range of TIFF 6.0 formats including uncompressed, CCITT RLE, CCITT Group 3 Fax, CCITT Group 4 Fax, LZW, Pack Bits, JPEG, and deflate compression types. ImagXpress supports black and white, RGB, and RGB palette images but it does not support transparency mask, CMYK, YCbCr, or CIELab.

U

Unsharp Mask Filter
The unsharp mask filter, also called the difference of Gaussian or DoG filter, is a type of convolution filter used for sharpening an image. The unsharp mask gets its backwards sounding name from the fact that it takes a Gaussian filtered version of the image and takes the difference between it and the original image to de-emphasize the low frequency components, and thus emphasize the high frequency components of the image.

V

Value/Volume
The brightness of a pixel in the HSV colorspace.

W

WMF
The Microsoft Windows Metafile format is used to store vector and bitmap image data. Because of its popularity and wide use, many Windows and non-Windows applications support WMF.


My Content isn't Straight
Send Feedback |
How To > Solve Problems with ScanFix Xpress > My Content isn't Straight

Glossary Item Box

My Content isn't Straight

Deskew

The ScanFix® Xpress Deskew method examines the current image to determine how straight the content is, and if it is not straight, it will rotate the image to make it straight. The detection process looks for groups of pixels on the image, such as lines and text that appear to be grouped horizontally or vertically. By measuring how much the image would need to be shifted to make these groups horizontal or vertical, the process can determine how much rotation the image has, and therefore how much the image will need to be rotated to become straight.

A number of likely areas are analyzed before the process makes a decision, and the degree to which these different areas agree provides a confidence value that tells you how likely the result is to be correct. This tool is best suited for images that have items like text and horizontal and vertical lines; it does not work well on images such as photographs and line drawings that contain lines with many different angles.

Example of Deskew:

Click to Enlarge Click to Enlarge

Border Removal

BorderRemovalOptions has an option to deskew an image as well, but rather than examining the contents of the image, it looks for the edge of the document in the image, and straightens the image based on that edge. Remove Border works only on images that have a dark overscan-like border, as shown, but it will detect the skew no matter what is within the document, including photographs, line drawings, or even a blank page.

Example of Border Removal:

Click to Enlarge Click to Enlarge


I Need My Images to Line Up
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need My Images to Line Up

Glossary Item Box

I Need My Images to Line Up

Registration

The RegisterImage method is a tool that looks at the contents of an image, and shifts the content to create a specified margin. The Registration operation looks for significant features starting from the left and top edges, and moves those features to a specified distance from the top and left edges of the page. All image content is shifted by this operation. The features can be the start of the data, or a line parallel to the image edge. Registration only looks at the left and top edges, and is intended to work on images where the background and any overscan are the same color as the document.

It also functions best on straight images, so it may be necessary to run Deskew on the images before registering them. If you want to have all your documents the same size, such as 8.5 by 11 inches, then after you run registration you can use Get Rectangle to get an 8.5 by 11 inch rectangle from the image; any excess will be cut off, and any place where the rectangle goes outside the image bounds will be filled with the fill color.

While Registration only works from the upper left corner, if you need to have consistent margins on all sides of your page, you can rotate the image 180 degrees, run registration a second time, and rotate it back 180 degrees after processing. This will register the top left and bottom right corners, thus setting all four margins.

Example of Register Image:

Click to Enlarge Click to Enlarge

Border Removal

The RemoveBorder method can be used on images with a dark overscan outside the image bounds. By using the DeskewBorder and CropBorder options in BorderRemovalOptions, the image will be straightened, and all of the border area removed, leaving just the original page. If all your pages contain consistently positioned data within the page, this will be sufficient. If the data within the page is not correct, then registration can be used on the resulting image to further align the data.

Example of Remove Border:

Click to Enlarge Click to Enlarge


I Need to Remove Noise from My Image
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Remove Noise from My Image

Glossary Item Box

I Need to Remove Noise from My Image

Despeck

The Despeckle method is used to remove small groups of pixels, called specks, from the image. Specks are removed by examining each group of 4-way connected pixels and removing any group below the selected size threshold. Despeckle works only on bitonal images, and is designed to remove randomly distributed specks from the image.

Example of Despeckle:

Click to Enlarge Click to Enlarge

Dot Shading Removal

The RemoveDotShading method is designed to remove shaded regions from bitonal images. These regions may be caused by halftone printing, or by halftone or dither patterns applied during thresholding. Shaded regions include groups of regularly spaced dots, typically larger than random specks. Remove Dot Shading uses several parameters to define regions where shading might occur. Remove Dot Shading will only work on these large regions; Despeckle should be used when dealing with randomly located specks.

Example of Remove Dot Shading:

Click to Enlarge Click to Enlarge

Image Detergent

The AutoImageDetergent and Image Detergent colorspace-based filtering methods work only on color images. Image Detergent works by changing pixels of similar color values to a central color value, which has the result of smoothing the image wherever regions of those colors appear. Since it works based on color value rather than location, Image Detergent is very effective at smoothing out text in high contrast regions without blurring or otherwise distorting the characters.

JPEG compression artifacts around characters can be removed with this operation. This operation can be run prior to Binarization for improved file compression, reduced bitonal noise and better OCR results. The example below shows the results of Image Detergent smoothing the white, black and orange colors of the image.

Example of Image Detergent:

Click to Enlarge Click to Enlarge

Gaussian, Average, & Median Filters

Smooth continuous tone images using Gaussian, average, and median filters. ScanFix® Xpress provides a number of filters that are designed for smoothing and removing noise in color and gray images, each of which has different strengths and weaknesses. The image below has a number of features that will show the strengths and weaknesses of each filtering method.

Example of an Image Before Filters are Applied:

Click to Enlarge Click to Enlarge

The simplest noise removal filter is the ApplyFilterAverage, which controls an average, or box filter. This filter examines a “window” of a given size around each pixel, and replaces the pixel with the average of the pixels in the region. This filter is very fast and provides a large degree of smoothing, but the use of a rectangular window tends to produce sharp edged artifacts in the output image.

Example of Apply Filter Average:

Click to Enlarge Click to Enlarge

The ApplyFilterGaussian method works similarly, but uses a Gaussian bell-shaped curve to produce a weighted average, with pixels near the center of the window contributing more to the final average than pixels near the edge of the window. This eliminates the artifacting seen with the average filter, but a Gaussian filter requires a larger window size to produce the same degree of smoothing as the box filter, meaning it runs slower.

Example of Apply Filter Gaussian:

Click to Enlarge Click to Enlarge

The ApplyFilterMedian method also works using a window, but rather than averaging the pixel values in the window, it sorts the pixels by brightness and takes the middle value. What this means in practice is that while the Average and Gaussian filters blur sharp edges, the Median filter keeps them sharp, while very effectively filling in small specks of darker or lighter color. The disadvantages of the Median filter are speed, since each pixel to be filtered requires sorting a window-sized list of values, and its tendency to remove thin lines and round off corners. A Median filter must be used very carefully with text, because it can easily filter out portions of characters.

Example of Apply Filter Median:

Click to Enlarge Click to Enlarge

All of these filters work well on photographic images, with the Median filter generally producing the best results if there are no fine details that it will remove. All of these can be used on high resolution images with text, but they all risk blurring or removing text along with the undesirable noise. Image Detergent is generally the best choice for removing noise around text, when it can be applied.


My Image has Dark Borders Around It
Send Feedback |
How To > Solve Problems with ScanFix Xpress > My Image has Dark Borders Around It

Glossary Item Box

My Image has Dark Borders Around It

Border Removal Options

BorderRemovalOptions has a number of options for removing dark borders from an image, such as those caused by overscan on a dark background. The options for removal include removing the border by reducing the image size, cutting off the dark areas, or replacing the border with white, leaving the image size the same.

Example of Border Removal:

Click to Enlarge Click to Enlarge

Other Options

With pages that are not straight, such as shown below, removing the border will not work well, as CropBorder only cuts along horizontal and vertical lines. While replacing the border would bleach this remainder out, in almost all cases it is desirable to turn on the DeskewBorder operation as well, which will attempt to detect the amount of rotation by looking at the edges of the border, and straighten the image to provide a better crop.

CropBorder does not require deskew, as it handles edges that are irregular or at an angle, but using deskew at this point may be a better option than a separate deskew operation; first, because doing the two operations at once is usually faster, and second, because the existence of a document edge allows skew detection to work even if there is little or no content usable by the standard skew detection within the page. All three options can be used together, which will straighten the image, cut off the dark border, and bleach out any remaining dark data along the edges.


I Need My Images to be a Consistent Size
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need My Images to be a Consistent Size

Glossary Item Box

I Need My Images to be a Consistent Size

Often documents you are trying to process will have different sizes. The Deskew process, for example, generally enlarges the size of the image to make room for the corners of the original, which may contain information that would be lost if the image were clipped back to its original size. If your documents use a consistent paper size, and have a black overscanned border, then the remove border tool may be the best choice; see the topic My Image has Dark Borders Around It for information on removing these borders.

In other cases, images may be generated from documents of differing sizes, or may have a white overscan that prevents border removal from being used. In this case, the solution is to process the images in two steps:

  1. Use RegisterImage to align the upper left corner of the image in the desired location. For example, if you want the documents to have one-inch margins, then set the resultant margin to 1 times the image resolution. (Set the margin to “300” pixels when processing images with a 300 dpi resolution.)

Example of Register Image:

Click to Enlarge Click to Enlarge

  2. Use GetRectangle to generate an image of the desired size. If the original document is larger than the specified rectangle, any excess data will be cut off; if the document is smaller than the specified rectangle, then the extra space will be filled with the pad color.

Example of Get Rectangle:

Click to Enlarge Click to Enlarge


My Characters are Faint, Broken, or Ragged
Send Feedback
How To > Solve Problems with ScanFix Xpress > My Characters are Faint, Broken, or Ragged

Glossary Item Box

My Characters are Faint, Broken, or Ragged

Growing Characters

Older dot matrix printers often produce text where the dots don’t quite touch enough to form solid characters. If the image resolution is high enough, it is possible to use a morphological filter to “grow” those pixels together into a solid object. The Dilate method will make dark objects get bigger. It does this by using a filter that looks at all pixels in the filter window, and choosing the darkest pixel there to put in the output image. This will grow the dots in dot matrix text together, but it also makes them bolder.

The Close filter runs the Dilate filter followed by an Erode filter of the same size, which works the opposite way, making the dark object smaller. While it seems like the Erode operation would undo the work of the Dilate operation, most objects that grew together will stay together, because they will not erode along the edges that were joined by the grow. This will produce solid characters, and then thin them back to their original thickness rather than leaving them bold.

This feature should be used carefully, and only on high resolution images, however; a large filter window or a low resolution image can result in filling in the white islands in characters, or blending adjacent characters together.

Example of Growing Characters:

Click to Enlarge Click to Enlarge
The definitions of dilate and erode are taken from bitonal image processing, where they apply to the behavior on dark pixels. These functions will behave the same way on color and gray images, dilating and eroding the dark pixels in the image. The ApplyFilterOpen and ApplyFilterClose filters work the opposite way.

Since these filters only work on continuous tone (color or grayscale) images, their behavior is taken from the field of color image processing, where the terms dilate and erode mean the opposite.

Smooth Objects

The SmoothObjects method, which only works on bitonal images, looks at groups of pixels, and finds isolated bumps and pits in the edges of those objects, and fills them in. This is helpful for improving the appearance of text, improving OCR recognition rates and also results in a decrease in the size of the compressed file.

Example of Smooth Objects:

Click to Enlarge Click to Enlarge


I Need to Remove Lines & Hole Punches
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Remove Lines & Hole Punches

Glossary Item Box

I Need to Remove Lines & Hole Punches

Lines often interfere with OCR, particularly when they cross characters. If your images are color and have lines of a different color than the data you are trying to OCR, the VirtualBulb method is typically the best approach. Virtual Bulb acts like a dropout scanner, dropping a given hue to white and all other hues to gray or black, generating a gray output from a color input image. Virtual Bulb is also capable of doing things that real dropout scanners cannot, such as drop multiple hues at once, compensate for dark ink without losing faint fill data, and even extracting a given color and converting everything else to white.

Example of Virtual Bulb:

Click to Enlarge Click to Enlarge

If your images are bitonal, ScanFix® Xpress includes two different tools for removing lines with minimal damage to intersecting characters. The RemoveLines method removes horizontal and/or vertical lines of a given minimum length from bitonal images, with settings for dealing with broken lines and reconstructing characters and lines that cross the removed lines. The RemoveCombs method removes both combs and fill-in-the-box elements of forms, using spatial frequency analysis to find the "teeth" and remove them, while leaving the vertical strokes of the characters.

Example of Remove Combs:

Click to Enlarge Click to Enlarge

The RemoveBlobs method removes large, high density objects from a bitonal image, allowing the removal of items such as punched holes and graphical logos that might interfere with other processing.

Example of Remove Blobs:

Click to Enlarge Click to Enlarge

Forms processing technology can also be used to remove background form content such as lines, guide text and other graphical content. Contact Accusoft Pegasus for additional information.


My Image has Regions of White on Black Text
Send Feedback |
How To > Solve Problems with ScanFix Xpress > My Image has Regions of White on Black Text

Glossary Item Box

My Image has Regions of White on Black Text

Often forms will contain guide text printed in white-on-black text, and this text might need to be OCR'd to allow a field to be identified. The CorrectInverseText method looks for regions of black of a specified size that appear to contain white data, and inverts these regions to generate black-on-white text.

Example of Correct Inverse Text:

Click to Enlarge Click to Enlarge


I Need to Get Data from a Specific Area on a Form
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Get Data from a Specific Area on a Form

Glossary Item Box

I Need to Get Data from a Specific Area on a Form

Often, data will be needed from a specific area or areas of an image, which will be known ahead of time. The GetRectangle method will return the contents of a rectangle on the page, given an X, Y location, and a width and height in pixels. GetRectangle is not very useful, however, if the data isn't where it should be, so GetRectangle is best used after either RemoveBorder or RegisterImage is used to position the image.

GetRectangle works on all supported color depths. If part of the specified rectangle falls outside of the image bounds, the out of bounds portion will be filled with the given pad color.

Example of Get Rectangle:

Click to Enlarge Click to Enlarge
Forms processing technology can also be used to extract specific regions of a form image. Contact Accusoft Pegasus for additional information.


My Color & Gray Images are too Light or Dark
Send Feedback |
How To > Solve Problems with ScanFix Xpress > My Color & Gray Images are too Light or Dark

Glossary Item Box

My Color & Gray Images are too Light or Dark

Color and gray images allow more options to deal with questionable data because, unlike bitonal images, very faint or very dark data is often still salvageable. Whether working with a faint carbon copy or normal print on heat-exposed thermal paper, there is still contrast between the background and foreground. You just need to expand the contrast between the two.

The AdjustBrightnessContrast method has two different modes of contrast correction, global and adaptive. Both types of correction take a minimum and maximum percentile which is used to determine the foreground and background colors. The 0th percentile, which represents the darkest pixel found, is typically a good choice for the minimum, while 50th percentile, which represents the average color of the region, is a good choice for the maximum. Setting the minimum to -1 will prevent the image from being darkened, while setting the maximum to 101 will prevent the image from being lightened.

Global Correction

Global correction automatically chooses a single correction for the entire page, while adaptive correction adapts to changing characteristics across the page. In most cases, global correction is sufficient, and will provide more consistent results.

Example of Global Correction:

Click to Enlarge Click to Enlarge

Adaptive Correction

Adaptive correction is for the worst case images, where brightness and contrast varies considerably across the page. Adaptive correction is capable of pulling extremely faint text out (even making the text on the back side of a scanned page readable in some cases), but it is also capable of making high contrast noise out of a blank scanned page. The contrast limits for adaptive correction let you choose how aggressively to increase the contrast for dark, mid-range, and light pixels.

Example of Adaptive Correction (faint text):

Click to Enlarge Click to Enlarge

Adaptive correction also works well on photographs. Set the minimum to 0 and the maximum to 100, and it will maximize the contrast across the photograph, bringing out hidden details that were lost in under- or over-exposed areas of the photograph.

Example of Adaptive Correction (under-exposed color photograph):

Click to Enlarge Click to Enlarge


I Have Forms Scanned in Color & Need to Remove Some Colors or Data
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Have Forms Scanned in Color & Need to Remove Some Colors or Data

Glossary Item Box

I Have Forms Scanned in Color & Need to Remove Some Colors or Data

Drop out forms, those designed to be scanned with a red or green bulb, are best handled by the VirtualBulb method. It works in the same basic way as a dropout scanner, converting a specific hue to white, and all other hues to black. This method necessarily produces a gray output image, but is very tolerant of minor changes in ink color, scanner brightness, and other variables.

Example of Virtual Bulb:

Click to Enlarge Click to Enlarge

Since Virtual Bulb does its work in software, it is not subject to the limitations of a dropout scanner. Virtual Bulb uses a custom generated color space that allows for complex manipulations that are not possible with a dropout scanner. This allows Virtual Bulb to selectively increase the brightness of the dropout hue, to allow multiple hues to be dropped, and to allow very narrow ranges of hue to be dropped. It even allows the dropout operation to be reversed, allowing it to extract only items of the specified hue from the image. The gray image resulting from this operation can be easily binarized for OCR or other recognition activities.

Locating Items of a Certain Color

If you need to locate items of a certain color on the page, you can do so with the following actions. The first step is to use the ColorDrop method to extract the color of the items you want to locate, dropping all else in the image to black or white, whichever contrasts most with the color you are extracting. You can then use DetectColor with appropriate settings to return a list of bounding boxes for each zone of colored data, which can be applied back to the original image with GetRectangle to extract the desired data. If the color you wish to look for is not a saturated color (such as black), then a second ColorDrop step can be added to drop the target color to a saturated color before DetectColor is run.

Example of Color Drop:

Click to Enlarge Click to Enlarge

Example of Detect Color:

Click to Enlarge Click to Enlarge

If you are looking for regions of color that might be broken, such as highlighter over text, then the ApplyFilterOpen or ApplyFilterClose method can be used to blend the colors together just before DetectColor is run. For example, if the target colors have been converted to red on black, then a close filter would grow the red data by the given number of pixels, blending the discrete red objects together, and then shrink the red back down, leaving a solid object behind. For red on white, an open filter would be used.

Example of Apply Filter Open/Close before Detect Color:

Click to Enlarge Click to Enlarge


I Need to Find Which of My Images Have Color Data
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Find Which of My Images Have Color Data

Glossary Item Box

I Need to Find Which of My Images Have Color Data

Detecting Color Data

Detecting whether or not an image scanned on a color scanner actually has color data in it seems like an easy task; if there are any pixels where red, blue, and green values do not equal each other, then the image is color. However, while this is certainly a simple approach, it is unlikely to be useful in real life situations. Variations in paper and ink, scanner calibration, dirt, stray marks and a number of other factors can result in an image that is technically color, but does not have any significant color information. Even some obvious cases of color data, such as a form printed on bright yellow paper, may be treated the same as non-color documents, if that color can be dropped without loss of information in the text.

Since the definition of a "color" document is very subjective, the DetectColor method uses a number of user-settable thresholds that separate "color" from "not color." The first of these is the saturation and brightness required for a pixel to be considered "color." Pixels darker or less saturated than the levels you choose will be ignored, and the remaining pixels will be grouped together to form objects.

Example of Detect Color:

Click to Enlarge Click to Enlarge

The next step is to analyze those colored objects, and filter those by size. To be considered "color", the image will need to have a number of objects over the minimum size; this number is controlled by the sensitivity. At 100% sensitivity, a single object over the threshold will trigger a "color" response; the number needed increases with decreasing sensitivity, until thousands of objects (or an object thousands of times the minimum size, or some combination of the two) are needed for a "color" response.

In cases where it is desirable to treat an image with colored paper as a "not color" image, there is an IgnorePaperColor option that can be used. That option will detect the average hue of the image, and drop that color to white using a process similar to Virtual Bulb, but one that preserves other hues. The resulting white background image will then be processed to determine if the remaining data meets the "color" criteria.

Example of Detect Color and Ignore Paper Color:

Click to Enlarge Click to Enlarge

The Detect Color function will return a number of parameters in addition to the yes/no value and confidence level. These parameters indicate what it found out about the image, and why it made the decision it did. These parameters will let you process a set of sample images, and choose appropriate thresholds for the different selection criteria.


I Need to Convert a Gray Image to Bitonal
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Convert a Gray Image to Bitonal

Glossary Item Box

I Need to Convert a Gray Image to Bitonal

Auto Binarize

Autobinarize automatically computes all necessary parameters by analyzing the input data before actually performing the binarization. The algorithm is tuned to typical document images, consisting of dark text on brighter background. It is robust to shadows, noise and background images.

Example of Auto Binarize:

Click to Enlarge Click to Enlarge

Binarize

Binarization works 1-bit, 8-bit and 24-bit input images creating 1-bit output of the same dimensions. Parameter options should be selected according to the type of image and desired results. This operation modifies the color palette associated with the image setting it to two colors, with black as color 0 and white as color 1.

Local Contrast Enhancement

The LceFactor property increases the contrast in each region of the image. When used as a prelude to binarization it increases the sensitivity of the binarization to detail in all regions of the image.

Example of original image:

Click to Enlarge Click to Enlarge

Example of local contrast enhancement:

Click to Enlarge Click to Enlarge

Example of local contrast enhancement and binarization:

Click to Enlarge Click to Enlarge

BinarizeBlur

The BinarizeBlur enumeration can be used with the LceFactor property when the original digitization is fine enough to reveal the halftone grid on the original document. It ensures that shades of gray are interpreted as such rather than a combination of black and white. There are three options: Gaussian, Smart and none.

Example of an image binarized with local-contrast enhancement without pre-blur:

Click to Enlarge Click to Enlarge

Example of image binarized with local-contrast enhancement with Gaussian pre-blur:

Click to Enlarge Click to Enlarge


I Need to Convert a Color Image to Bitonal
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Convert a Color Image to Bitonal

Glossary Item Box

I Need to Convert a Color Image to Bitonal

When converting an image scanned in color to bitonal, it is often best to do this in stages, rather than all at once. Color images contain data that can be used to provide preliminary cleanup, which will produce a better bitonal image. An example of a process that might be useful in a color to bitonal conversion are:

  1. Use ImageDetergent to clean the background color, so there will be less potential for noise in the bitonal image.
  2. Use ColorDrop to drop bright colors to darker colors, so they will threshold to black, or to light colors so they will threshold to white.
  3. Use VirtualBulb to drop out forms, or to drop colored paper to white.
  4. Use AdjustBrightnessContrast to make sure all images have bright whites and dark blacks.

Once the image is converted to a more suitable form, then Binarize or AutoBinarize be used to complete the conversion to bitonal.

Examples

The following section shows examples of images from steps 1-4 above.

Example of Image Detergent:

Click to Enlarge Click to Enlarge

Example of Color Drop:

Click to Enlarge Click to Enlarge

Example of Virtual Bulb:

Click to Enlarge Click to Enlarge

Example of Adjust Brightness Contrast:

Click to Enlarge Click to Enlarge

Example of Auto Binarize:

Click to Enlarge Click to Enlarge


My Images are Scanned Sideways, Backwards, or Upside Down
Send Feedback |
How To > Solve Problems with ScanFix Xpress > My Images are Scanned Sideways, Backwards, or Upside Down

Glossary Item Box

My Images are Scanned Sideways, Backwards, or Upside Down

ScanFix® Xpress contains a number of basic image manipulation functions that can be used to flip, mirror, and rotate images to the desired orientation. The different options are:

  • Rotate - This operation will rotate the image any number of degrees clockwise, and can also be used to shear an image if the horizontal and vertical rotations are set to different values. Since rotation may clip corners off the original image, there is an option to maintain the original image size, which prevents this from occurring.
  • Flip - This swaps the top and bottom of the image. Note that this is NOT the same as a 180 degree rotation, so this will change an image to its mirror image as well.
  • Mirror - This swaps the left and right sides of the image, creating a mirror image.


My Images Need to be Larger or Smaller
Send Feedback |
How To > Solve Problems with ScanFix Xpress > My Images Need to be Larger or Smaller

Glossary Item Box

My Images Need to be Larger or Smaller

While the concept of "size" in a digital image is somewhat ambiguous, most often when people want to make their images larger or smaller, they want to re-sample the images to change the number of pixels in the image. The most basic way to change the number or pixels in the image is to use the Rescale method. The rescale operation takes a horizontal and a vertical magnification amount, which are typically set to the same value to preserve the aspect ratio. Values of greater than 1.0 will make the image larger, while values of less than 1.0 will make the image smaller. To make an image 50% larger, for example, set the magnification values to 1.5; to make the image 1/3 smaller, set the magnification values to .6667.

Scaling is done differently for continuous tone and bitonal images; scaling of continuous tone images blends the colors of adjacent pixels together to get a new color for the result. This blending is not possible with bitonal images, so they must choose black or white. This limitation means that scaling bitonal images up in size tends to result in blocky images. There is a special option available for doubling the size of bitonal images, called SmoothZoom. This operation has special rules for zooming each possible 2 x 3 block of input pixels. The resulting output rounds off some of the corners which is more visually pleasing.

Sometimes, rather than resampling the image to change the scaling, the size needs to be changed by adding or removing pixels from the image without rescaling. The GetRectangle method can be used to extract just a given rectangle of data from the image, or, if provided with coordinates specifying a rectangle outside the original image, be used to add pixels of the pad color. If the image is not consistently positioned, then RemoveBorder or RegisterImage can be used to remove margins of the image. In the case of a dark border, RemoveBorder can be used to remove the black areas around the edge of the image. With white borders, RegisterImage can be used to remove the white around the data.


I Need to Determine Which Images or Regions Have Data
Send Feedback |
How To > Solve Problems with ScanFix Xpress > I Need to Determine Which Images or Regions Have Data

Glossary Item Box

I Need to Determine Which Images or Regions Have Data

DetectBlankPage and DetectBlankRectangle are similar functions that examine a given area for significant amounts of data. What is “significant” is defined in terms of object size. For example, a group of just a few pixels is probably a speck, while a group of pixels over 20 pixels in width or height is probably a deliberate mark. There is a GapFill option which runs a dilate black operation on the image during detect, which can be used to grow individual characters into word or sentence sized objects. This is useful for ignoring large noise, such as stray pencil marks, while accurately detecting data such as words.

Note that the continuous tone detection algorithm may, in this operation, provide different results from the bitonal algorithm, even with visually identical input data. This is due to the use of a high pass filter in the continuous tone version to handle images with varying brightness and contrast. If any objects that are found exceed the minimum size, the image or region will be declared “not blank.” The confidence value returned by the operation depends on the number of objects found; large numbers of objects near or over the size threshold will return a high confidence “not blank” result, while large numbers of objects just under the size threshold will return a low confidence “blank” result.

DetectBlankPage is intended for use on entire pages, and due to this its options are relative to the edges of the image. Values can be set for the margins, telling BlankPageDetect to skip over certain areas (such as hole punches that are expected in the left or right margins). BlankPageDetect also has a fast but rudimentary border detection algorithm that will skip over dark borders, so that they are not interpreted as data. Margins are relative to any detected border. If the simple algorithm used by the IgnoreBorder option is not sufficient to detect the borders of your images, then you should process the images first with the RemoveBorder method, then run DetectBlankPage on the resulting output.

DetectBlankRectangle is intended for use on portions of an image, and because of this its options are relative to a given set of rectangle coordinates. This means your images must be aligned before DetectBlankRectangle can be reliably run; refer to the topic I Need to Get Data from a Specific Area on a Form for more information. The IgnoreBorder option is available, and will run inside the given rectangle.


Use a Series of Cleanup Operations
Send Feedback |
How To > Use a Series of Cleanup Operations

Glossary Item Box

Use a Series of Cleanup Operations

The Enhancements object in ScanFix® Xpress can be used to setup, execute, save and load a series of ScanFix Xpress cleanup operations. This mechanism can be used to develop applications that perform a fixed series of operations on one or more images. The Enhancements sample applications demonstrate using the Enhancements object API.

Set Up Series of Operations

The Enhancements object holds an ordered list of “option” objects. Each option contains the operation and properties for a single ScanFix Xpress cleanup operation. Options will be performed in the order they are stored in the options list.

With most operations the option object is the same object that holds properties for a single operation. For example, a DeskewOptions object is used for Deskew cleanup operation properties.

For methods that do not have an options object there are special objects for use with the Enhancements options list. For example, to add a Flip operation you would create a FlipOptions object (which has no properties) and add it to the Enhancements list.

In Summary:

  • Create Enhancements object.
  • For each operation:
    • Create options object.
    • Set properties in options object.
    • Add options object to Enhancements object’s options list.

Execute Series of Operations

The operations in an Enhancements options list can be applied to the image held by a ScanFix Xpress object calling the ExecuteEnhancements method. This will execute, in sequence, each option in the list.

The results from each cleanup operation will be a single results object. After successful execution, the Enhancements object will contain a list of results objects, where each results object contains results for the corresponding options list object.

If there is an error or exception during execution of any operation, then the results list will be incomplete or empty. In this case, the results list will contain results objects for each operation before the failing operation. The ScanFix Xpress object will contain ErrorCode and ErrorDescription properties for the operation that failed.

In Summary:

  1. Create and configure Enhancements object (see "Set Up Series of Operations" above).
  2. Create ScanFix Xpress object.
  3. Load image into ScanFix Xpress object.
  4. Call ScanFixObject’s ExecuteEnhancements() method and pass the configured Enhancements object.
  5. Compare Enhancements object results list size with options list size to see if all operations were completed successfully.
  6. Transfer processed image from ScanFix Xpress object.
Steps 3-6 can be repeated to process a series of images using a single Enhancements object.


Save Enhancements Objects
Send Feedback |
How To > Save Enhancements Objects

Glossary Item Box

Save Enhancements Objects

ScanFix® Xpress provides the ability to read and write a stream using the ReadFromStream and WriteToStream methods within the Enhancements object. These streaming methods are provided to work with the Accusoft Pegasus FormDirector component for reading and writing ScanFix Xpress enhancement options, processing information and operations as needed to integrate into the Accusoft Pegasus Forms Processing Suite of components.

WriteToStream

The WriteToStream method will create an XML stream from the current Enhancements List. When the WriteToStream method is called passing in a list of requested enhancements, ScanFix Xpress will generate an XML string containing the Enhancements list. This list can then be read in later using the ReadFromStream method in ScanFix Xpress or some other Accusoft Pegasus component.

ReadFromStream

The ReadFromStream method will use the formatted XML string enhancements list prepared by the WriteToStream method. Once the XML string has been read in, ScanFix Xpress will translate the enhancement options and operations contained in the string to perform image processing.

If the XML stream is not formatted properly, ScanFix Xpress will throw the error code 14550.


Error Codes
Send Feedback |
How To > Error Codes

Glossary Item Box

Error Codes

To generate a debug log file, set Debug to true. The log file is kept at the location specified by DebugLogFile. Set the ErrorLevel to Development or Detailed to indicate the level of detail logged.

Error Codes

This section covers ScanFix® Xpress Error Codes, their descriptions and possible causes.

Error Codes | Description | Cause
0 | Ok | No error.
14000 | Null Argument | Error message occurs when a parameter is set to null. The error message indicates the name of the null parameter.
14001 | Argument Out of Range | This error message occurs when a parameter is outside the acceptable range. The error message indicates the name of the parameter that was out of range.
14002 | Invalid Operation | This error message occurs when an invalid operation is attempted. The message indicates the name of the operation.
14003 | Invalid Enumeration Argument | This error message occurs when an enumeration is set to an invalid value. The message indicates the name of the enumeration.
14004 | Out of Memory | This error message occurs when the system does not have enough memory to perform the requested operation.
14005 | Internal | Internal error during ScanFix object initialization.
14100 | Unsupported Image | This error message occurs when trying to process an image that is unsupported.
14150 | Parameter Mismatch | This error occurs during a call to GetRectangle if the height and width are not greater than zero or padding is attempted when not allowed. It may be followed by one of these error strings: "Width and height must both be greater than zero, re-check parameters." "Padding not permitted, re-check parameters."
14151 | Parameter Mismatch | This error occurs during a call to Dilate or Erode if the Direction and OnlyDiagonal properties are set to conflicting values. If OnlyDiagonal is set to true, Direction must be set to exactly two adjacent directions. It may be followed by this error string: "Options.direction indicates an invalid direction for diagonal only operation."
14200 | Handle Error | This error occurs during a call to any of the enhancement methods if the image handle is in use. It may be followed by this message: "Image is locked and cannot be modified."
14201 | Handle Error | This error occurs during the DIB conversion process and may be followed by this message: "Could not retrieve data from handle."
14300 | Internal Error | This is an internal error and may be followed by this message: "Failure loading ScanFix Xpress operation code."
14301 | InternaParameter Mismatch Error | This is an internal error and may be followed by a message such as: "... internal initialization exception." "... internal execution exception." "... internal termination exception."
14400 | Image Bit Count not supported Error | This is an internal error and may be followed by a message such as: "This function does not support the bit count of the current image."
14500 | Licensing Error | This error will occur when attempting to perform a function that is not allowed under the current license and may be followed by this message: "The component is not licensed to perform this function."
14550 | Read from Stream Error | This error will occur when attempting to read from a stream and that stream is not formatted properly. This message will display: "An error occurred while reading the stream input in...."
14551 | Write to Stream Error | This error will occur when attempting to write to a stream. This message will display: "An error occurred while writing the stream output in...."
14898 | Miscellaneous Error | This is a miscellaneous error that can occur and may be followed by a message such as: "An unexpected error occurred in ..." "Provided handle was not an HBITMAP." "Unable to get object information." "Could not create context for converting to HBITMAP."
14900 | Application-level Error | This is an operating system error that can occur when accessing Microsoft objects.


Project Overview

Accusoft Pegasus
ScanFix ActiveX 6.0
Project Overview
Send Feedback

Description

Accusoft ScanFix Xpress 6

Classes

Class Module | Description
AutoBinarizeOptions | Defines a place holder object for the AutoBinarize image enhancement.
AutoBinarizeResults | Defines a place holder class for the AutoBinarize enhancement result.
AutoImageDetergentOptions | This object contains parameters that control the AutoImageDetergent process.
BinarizeOptions | This object contains parameters that control the binarization process.
BinarizeResults | Defines a place holder object for the Binarize enhancement result.
BlankPageDetectOptions | This object contains parameters that control the detect blank page process.
BlankPageDetectResults | This object contains output values from the blank page detect process.
BlankRectangleDetectOptions | This object contains parameters that control the detect blank rectangle process.
BlankRectangleDetectResults | This object contains output values from the blank rectangle detect process.
BlobRemovalOptions | This object contains parameters that control the blob removal process.
BlobRemovalResults | This object contains exposed parameters that control the auto border removal process.
BorderRemovalOptions | Contains parameters controlling border removal process.
BorderRemovalResults | This object contains output values from the auto border removal process.
Box | This object contains coordinates for a rectangular area where an object was located.
BoxCollection | This object contains a collection of rectangular bounding boxes for objects in an image.
BrightnessContrastOptions | This object contains exposed parameters that control the AdjustBrightnessContrast process.
BrightnessContrastResults | This object contains output values from the contrast adjustment process.
ByteCollection | This object contains a collection of byte-sized numeric values.
ColorDropOptions | This object contains parameters that control the ColorDrop process.
ColorDropResults | Defines a place holder class for the ColorDrop enhancement result.
ColorFindingCollection | This object contains a collection of SF_ColorFinding values.
ColorRadius | Color and radius structure used by ImageDetergent and ColorDrop.
ColorRadiusCollection | This object contains a collection of ColorRadius objects.
CombRemovalOptions | This object contains parameters that control the comb removal process.
CombRemovalResults | This object contains output values from the comb removal process.
DeskewOptions | This object contains exposed parameters that control the deskew process.
DeskewResults | This object contains output values from the deskew process.
DespeckleOptions | This object contains parameters that control the despeckle process.
DespeckleResults | This object contains output values from the despeckle process.
DetectColorOptions | This object contains exposed parameters that control the DetectColor process.
DetectColorResults | This object contains output values from the DetectColor process.
DilateOptions | This object contains parameters that control the dilate process.
DilateResults | Defines a place holder class for the Dilate enhancement result.
DotShadingRemovalOptions | This object contains parameters that control the dot shading removal process.
DotShadingRemovalResults | This object contains output values from the dot shading removal process.
Enhancements | Contains a list which will only accept enhancement options used with the ScanFix component.
ErodeOptions | This object contains parameters that control the erode process.
ErodeResults | Defines a place holder class for the Erode enhancement result.
FilterAverageOptions | This object contains parameters for an Average filter process.
FilterCloseOptions | This object contains parameters for a Close filter process.
FilterCustomOptions | This object contains parameters for a Custom filter process.
FilterGaussianOptions | This object contains parameters for a Gaussian filter process.
FilterLaplacianOptions | This object contains parameters for a Laplacian filter process. (A "placeholder" - used only for adding Laplacian filter to Enhancements.)
FilterMedianOptions | This object contains parameters for a Median filter process.
FilterOpenOptions | This object contains parameters for an Open filter process.
FilterPrewittOptions | This object contains parameters for a Prewitt filter process.
FilterResults | Defines a place holder class for the Filter enhancement result.
FilterSobelOptions | This object contains parameters for a Sobel filter process.
FilterUnsharpOptions | This object contains parameters for an Unsharp filter process.
FlipOptions | Defines a place holder class for the Flip image enhancement.
FlipResults | Defines a place holder class for the Flip enhancement result.
GetRectangleOptions | Parameters used in replacing the current image with a subset of the original image.
GetRectangleResults | Defines a place holder class for the GetRectangle enhancement result.
HueRadius | Hue and radius structure used by VirtualBulb.
HueRadiusCollection | This object contains a collection of HueRadius objects.
ImageDetergentOptions | This object contains parameters that control the ImageDetergent process.
ImageDetergentResults | Defines a place holder class for the ImageDetergent enhancement result.
ImageRegistrationOptions | This object contains exposed parameters that control the image registration process.
ImageRegistrationResults | This object contains output values from the image registration process.
InverseTextOptions | This object contains parameters that control the inverse text removal process.
InverseTextResults | This object contains output values from the inverse text removal process.
LineRemovalOptions | This object contains parameters that control the line removal process.
LineRemovalResults | This object contains output values from the line removal process.
MirrorOptions | Defines a place holder class for the Mirror image enhancement.
MirrorResults | Defines a place holder class for the Mirror enhancement result.
NegateOptions | Defines a place holder class for the Negate image enhancement.
NegateResults | Defines a place holder class for the Negate enhancement result.
NegativeCorrectionOptions | This object contains parameters that control the negative correction process.
NegativeCorrectionResults | This object contains output values from the negative correction process.
RescaleOptions | Defines the Rescale options used with rescale image enhancement.
RescaleResults | Defines a place holder class for the Rescale enhancement result.
Resolution | The class to get or set image resolution units.
RotateOptions | Defines the Rotate options used with rotate image enhancement.
RotateResults | Defines a place holder class for the Rotate enhancement result.
ScanFix | The main component object class for ScanFix.
ShearOptions | Defines the Shear options used with shear image enhancement.
ShearResults | Defines a place holder object for the Shear enhancement result.
SmoothObjectsOptions | Defines the SmoothObjects options used with the smooth objects enhancement.
SmoothObjectsResults | Defines a place holder object for the Smooth Objects enhancement result.
SmoothZoomOptions | Defines a place holder object for the Smooth Zoom image enhancement.
SmoothZoomResults | Defines a place holder object for the Smooth Zoom enhancement result.
VirtualBulbOptions | This object contains parameters that control the VirtualBulb process.
VirtualBulbResults | Defines a place holder class for the VirtualBulb enhancement result.
WeightMatrix | Holds 2-dimensional collection of weight values that define the matrix for a custom filter.

Public Enumerations

Enumeration | Description
SF_AutomaticMode | AutomaticMode - modes for automatic ImageDetergent operation.
SF_BinarizeBlur | Binarize Blur is used to set the pre-blur option of the Binarize feature.
SF_BrightnessContrastAdjustment | BrightnessContrastAdjustment specification values.
SF_BrightnessContrastSuggestion | BrightnessContrast adjustment suggestion values.
SF_ColorFindings | ColorFindings - values for collection of findings returned by DetectColor.
SF_EnhancementDirections | Specifies the direction of the operation for the Dilate and Erode methods.
SF_Enhancements | The enhancements available for use with the ExecuteEnhancements method.
SF_ErrorCode |
SF_ErrorLevel | Defines the amount of error information in the debug log.
SF_EvaluationChoice | Evaluation modes - choices for control behavior when licensed for trial use.
SF_FilterDirection | FilterDirection - direction options for filter.
SF_FromHdibMethod | Option values which determine how the FromHdib2() method operates.
SF_LicenseChoice | Specifies the edition of the control.
SF_ResolutionUnits | Sets or returns the unit of measurement used.
SF_ToHdibMethod | Option values which determine how the ToHdib2() method operates.


AutoBinarizeOptions Object

AutoBinarizeOptions Object
See Also Members Send Feedback

Description

Defines a place holder object for the AutoBinarize image enhancement.

Remarks

This object is added to an enhancement list to be processed along with other enhancements on an image.

See Also

AutoBinarizeOptions Members


AutoBinarizeOptions Object Members

AutoBinarizeOptions Object Members
See Also Overview Send Feedback

See Also

AutoBinarizeOptions Overview


AutoBinarizeResults Object

AutoBinarizeResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the AutoBinarize enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

AutoBinarizeResults Members


AutoBinarizeResults Object Members

AutoBinarizeResults Object Members
See Also Overview Send Feedback

See Also

AutoBinarizeResults Overview


AutoImageDetergentOptions Object

AutoImageDetergentOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the AutoImageDetergent process.

See Also

AutoImageDetergentOptions Members


AutoImageDetergentOptions Object Members

AutoImageDetergentOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property colorCount | Gets and sets number of dominant colors to find for Mode=ColorCount.
Public Property mode | A value that indicates which automatic color selection mode to use.

See Also

AutoImageDetergentOptions Overview


colorCount Property

colorCount Property
See Also Send Feedback

Description

Gets and sets number of dominant colors to find for Mode=ColorCount.

Property type

Read-write property

Syntax

Visual Basic
Public Property colorCount() As Long

See Also

AutoImageDetergentOptions Object


mode Property

mode Property

Description

A value that indicates which automatic color selection mode to use.

Property type

Read-write property

Syntax

Visual Basic
Public Property mode() As SF_AutomaticMode

See Also

AutoImageDetergentOptions Object


BinarizeOptions Object

BinarizeOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the binarization process.

Remarks

It modifies the color palette associated with the DIB, setting it to two colors - black and white.

See Also

BinarizeOptions Members | Binarize Method


BinarizeOptions Object Members

BinarizeOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property highThreshold | Gets and sets a value that controls letter and figure thickness.
Public Property lceFactor | Gets and sets the sensitivity of local contrast enhancement to faint features.
Public Property lowThreshold | Gets and sets a value that controls the background sensitivity.
Public Property preBlurType | Gets and sets the type of blur to apply to the image.

See Also

BinarizeOptions Overview | Binarize Method


highThreshold Property

highThreshold Property

Description

Gets and sets a value that controls letter and figure thickness.

Property type

Read-write property

Syntax

Visual Basic
Public Property highThreshold() As Long

Return Type

A long value which represents the high threshold.

Remarks

The default value is 190.

Valid values are LowThreshold to 255.

Too-thick letters and figures can generally be improved by lowering the value of HighThreshold.

Too-thin letters and figures can generally be improved by raising the value of LowThreshold and/or HighThreshold.

See Also

BinarizeOptions Object


lceFactor Property

lceFactor Property

Description

Gets and sets the sensitivity of local contrast enhancement to faint features.

Property type

Read-write property

Syntax

Visual Basic
Public Property lceFactor() As Long

Return Type

A long value which represents the sensitivity.

Remarks

The default value is 0.

Valid values are 0 to 255.

Lower values yield less sensitivity.

See Also

BinarizeOptions Object


lowThreshold Property

lowThreshold Property

Description

Gets and sets a value that controls the background sensitivity.

Property type

Read-write property

Syntax

Visual Basic
Public Property lowThreshold() As Long

Return Type

A long value which represents the low threshold value.

Remarks

The default value is 170.

Valid values are 0 to 255.

Should generally be set as high as possible without exceeding the brightness of any part of the background.

Black noise appearing in the background can generally be eliminated by lowering the value of LowThreshold.

Too-thin letters and figures can generally be improved by raising the value of LowThreshold and/or HighThreshold.

See Also

BinarizeOptions Object


preBlurType Property

preBlurType Property

Description

Gets and sets the type of blur to apply to the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property preBlurType() As SF_BinarizeBlur

Return Type

The SF_BinarizeBlur enumeration value set.

Remarks

The default value is SF_BLUR_NONE.

See Also

BinarizeOptions Object


BinarizeResults Object

BinarizeResults Object
See Also Members Send Feedback

Description

Defines a place holder object for the Binarize enhancement result.

Remarks

This class contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

BinarizeResults Members


BinarizeResults Object Members

BinarizeResults Object Members
See Also Overview Send Feedback

See Also

BinarizeResults Overview


BlankPageDetectOptions Object

BlankPageDetectOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the detect blank page process.

Remarks

Note: Examines an image and determines if the amount of data there is low enough for the page to be considered blank.

Important: This method is designed to work with document images only. Using this with photograph images may yield inaccurate or erroneous results.

See Also

BlankPageDetectOptions Members | DetectBlankPage Method


BlankPageDetectOptions Object Members

BlankPageDetectOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property bottomMargin | The number of rows of pixels to ignore on the bottom edge of the image.
Public Property gapFill | Gets and sets the maximum spacing between black objects that should be considered connected.
Public Property ignoreBorder | Gets and sets a flag that tells the operation to do a quick search for overscan in the border, and will adjust the detection area to move it inside the detected overscanned border.
Public Property leftMargin | Gets and sets the number of rows of pixels to ignore on the left edge of the image.
Public Property minimumContrast | Gets and sets the minimum level of contrast between background and foreground.
Public Property minimumObjectDimension | Gets and sets the minimum width or height of a black object that should be considered non-blank.
Public Property rightMargin | Gets and sets the number of rows of pixels to ignore on the right edge of the image.
Public Property topMargin | Gets and sets the number of pixels to ignore on the top edge of the image.

See Also

BlankPageDetectOptions Overview | DetectBlankPage Method


bottomMargin Property

bottomMargin Property

Description

The number of rows of pixels to ignore on the bottom edge of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property bottomMargin() As Long

Return Type

A long value which represents the number of rows to ignore on the bottom margin.

Remarks

The default value is 0.

Valid values are 0 to {image height}.

See Also

BlankPageDetectOptions Object


gapFill Property

gapFill Property

Description

Gets and sets the maximum spacing between black objects that should be considered connected.

Property type

Read-write property

Syntax

Visual Basic
Public Property gapFill() As Long

Return Type

A long value which represents the maximum spacing between object.

Remarks

The default value is 5.

Valid values are 0 to (the larger of image width or height).

See Also

BlankPageDetectOptions Object


ignoreBorder Property

ignoreBorder Property

Description

Gets and sets a flag that tells the operation to do a quick search for overscan in the border, and will adjust the detection area to move it inside the detected overscanned border.

Property type

Read-write property

Syntax

Visual Basic
Public Property ignoreBorder() As Boolean

Return Type

A boolean value which is True to ignore the border. Otherwise, False is returned.

Remarks

The default value is False.

See Also

BlankPageDetectOptions Object


leftMargin Property

leftMargin Property

Description

Gets and sets the number of rows of pixels to ignore on the left edge of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property leftMargin() As Long

Return Type

A long value which represents the number of rows to ignore on the left margin.

Remarks

The default value is 0.

Valid values are 0 to {image width}.

See Also

BlankPageDetectOptions Object


minimumContrast Property

minimumContrast Property

Description

Gets and sets the minimum level of contrast between background and foreground.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumContrast() As Long

Remarks

The default value is 64.

Valid values are 1 to 255.

Note: This property is only used when analyzing color or grayscale images - it will be ignored for bitonal images.

See Also

BlankPageDetectOptions Object


minimumObjectDimension Property

minimumObjectDimension Property

Description

Gets and sets the minimum width or height of a black object that should be considered non-blank.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumObjectDimension() As Long

Return Type

A long value representing the minimum width or height of a black object that should be considered non-blank.

Remarks

The default value is 10.

Valid values are 1 to (the smaller of image width or height).

See Also

BlankPageDetectOptions Object


rightMargin Property

rightMargin Property

Description

Gets and sets the number of rows of pixels to ignore on the right edge of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property rightMargin() As Long

Return Type

A long value which represents the number of rows in pixels to ignore on the right margin of the image.

Remarks

The default value is 0.

Valid values are 0 to {image width}.

See Also

BlankPageDetectOptions Object


topMargin Property

topMargin Property

Description

Gets and sets the number of pixels to ignore on the top edge of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property topMargin() As Long

Return Type

A long value which represents the number of pixels to ignore from the top margin.

Remarks

The default value is 0.

Valid values are 0 to {image height}.

See Also

BlankPageDetectOptions Object


BlankPageDetectResults Object

BlankPageDetectResults Object
See Also Members Send Feedback

Description

This object contains output values from the blank page detect process.

See Also

BlankPageDetectResults Members | DetectBlankPage Method


BlankPageDetectResults Object Members

BlankPageDetectResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property confidence | Gets and sets the confidence of the blank page detection process.
Public Property isBlank | Gets and sets a flag that indicates whether the page was determined to be blank.

See Also

BlankPageDetectResults Overview | DetectBlankPage Method


confidence Property

confidence Property

Description

Gets and sets the confidence of the blank page detection process.

Property type

Read-only property

Syntax

Visual Basic
Public Property confidence() As Long

Return Type

A long value which represents the confidence.

Remarks

The default value is 0.

Valid values are 0 to 100.

Note: Higher values indicate a higher confidence that the blank page was accurately detected.

See Also

BlankPageDetectResults Object


isBlank Property

isBlank Property

Description

Gets and sets a flag that indicates whether the page was determined to be blank.

Property type

Read-only property

Syntax

Visual Basic
Public Property isBlank() As Boolean

Return Type

A boolean value which represents if the page is determined to be blank or not.

Remarks

The default value is False.

Note: The value is based on whether any objects over the size threshold were found in the given region. More and larger objects produces a high confidence for a non-blank page, while a large number of objects near the threshold will produce a low confidence for a blank page.

See Also

BlankPageDetectResults Object


BlankRectangleDetectOptions Object

BlankRectangleDetectOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the detect blank rectangle process.

Remarks

Important: This method is designed to work with document images only. Using this with photograph images may yield inaccurate or erroneous results.

See Also

BlankRectangleDetectOptions Members | DetectBlankRectangle Method


BlankRectangleDetectOptions Object Members

BlankRectangleDetectOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property areaHeight | The height of the rectangle specifying the location to examine for blankness.
Public Property areaWidth | The width of the rectangle specifying the location to examine for blankness.
Public Property areaX | The X-coordinate of the rectangle specifying the location to examine for blankness.
Public Property areaY | The Y-coordinate of the rectangle specifying the location to examine for blankness.
Public Property gapFill | Gets and sets the maximum spacing between objects that should be considered connected.
Public Property ignoreBorder | Gets and sets a flag that tells the operation to do a quick search for overscan in the border, and will adjust the detection area to move it inside the detected overscanned border.
Public Property minimumContrast | Gets and sets the minimum level of contrast between background and foreground.
Public Property minimumObjectDimension | Gets and sets the minimum width or height of a object that should be considered non-blank.

See Also

BlankRectangleDetectOptions Overview | DetectBlankRectangle Method


areaHeight Property

areaHeight Property

Description

The height of the rectangle specifying the location to examine for blankness.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaHeight() As Long

Return Type

A long value which represents the rectangular area height.

Remarks

This property is used with the areaWidth, areaX and areaY to make up the rectangular area of the image for the blank rectangle detect process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlankRectangleDetectOptions Object


areaWidth Property

areaWidth Property

Description

The width of the rectangle specifying the location to examine for blankness.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaWidth() As Long

Return Type

A long value which represents the rectangular area width.

Remarks

This property is used with the areaHeight, areaX and areaY to make up the rectangular area of the image for the blank rectangle detect process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlankRectangleDetectOptions Object


areaX Property

areaX Property

Description

The X-coordinate of the rectangle specifying the location to examine for blankness.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaX() As Long

Return Type

A long value which represents the rectangular area x coordinate.

Remarks

This property is used with the areaWidth, areaHeight and areaY to make up the rectangular area of the image for the blank rectangle detect process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlankRectangleDetectOptions Object


areaY Property

areaY Property

Description

The Y-coordinate of the rectangle specifying the location to examine for blankness.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaY() As Long

Return Type

A long value which represents the rectangular area y coordinate.

Remarks

This property is used with the areaWidth, areaX and areaHeight to make up the rectangular area of the image for the blank rectangle detect process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlankRectangleDetectOptions Object


gapFill Property

gapFill Property

Description

Gets and sets the maximum spacing between objects that should be considered connected.

Property type

Read-write property

Syntax

Visual Basic
Public Property gapFill() As Long

Return Type

An long value which represents the maximum spacing between black objects that should be considered connected.

Remarks

The default value is 5.

Valid values are 0 to (the larger of image height or width).

See Also

BlankRectangleDetectOptions Object


ignoreBorder Property

ignoreBorder Property

Description

Gets and sets a flag that tells the operation to do a quick search for overscan in the border, and will adjust the detection area to move it inside the detected overscanned border.

Property type

Read-write property

Syntax

Visual Basic
Public Property ignoreBorder() As Boolean

Return Type

A boolean value which is True to ignore the border. Otherwise, False is returned.

Remarks

The default value is False.

See Also

BlankRectangleDetectOptions Object


minimumContrast Property

minimumContrast Property

Description

Gets and sets the minimum level of contrast between background and foreground.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumContrast() As Long

Remarks

The default value is 64.

Valid values are 1 to 255.

Note: This property is only used when analyzing color or grayscale images - it will be ignored for bitonal images.

See Also

BlankRectangleDetectOptions Object


minimumObjectDimension Property

minimumObjectDimension Property

Description

Gets and sets the minimum width or height of a object that should be considered non-blank.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumObjectDimension() As Long

Return Type

A long value which represents the minimum object dimension.

Remarks

The default value is 10.

Valid values are 0 to (the smaller of image height or width).

See Also

BlankRectangleDetectOptions Object


BlankRectangleDetectResults Object

BlankRectangleDetectResults Object
See Also Members Send Feedback

Description

This object contains output values from the blank rectangle detect process.

See Also

BlankRectangleDetectResults Members


BlankRectangleDetectResults Object Members

BlankRectangleDetectResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property confidence | Gets and sets the confidence of the blank rectangle detection process.
Public Property isBlank | Gets and sets a flag that indicates whether the rectangle was determined to be blank.

See Also

BlankRectangleDetectResults Overview


confidence Property

confidence Property

Description

Gets and sets the confidence of the blank rectangle detection process.

Property type

Read-only property

Syntax

Visual Basic
Public Property confidence() As Long

Return Type

A long value which represents the confidence value.

Remarks

The value range is between 0 and 100.

Note: The value is based on whether any objects over the size threshold were found in the given region. More and larger objects produces a high confidence for a non-blank region, while a large number of objects near the threshold will produce a low confidence for a blank region.

See Also

BlankRectangleDetectResults Object


isBlank Property

isBlank Property

Description

Gets and sets a flag that indicates whether the rectangle was determined to be blank.

Property type

Read-only property

Syntax

Visual Basic
Public Property isBlank() As Boolean

Return Type

A boolean value which is True if the rectangle is determined to be blank. Otherwise, False is returned.

Remarks

The default value is True.

See Also

BlankRectangleDetectResults Object


BlobRemovalOptions Object

BlobRemovalOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the blob removal process.

See Also

BlobRemovalOptions Members | RemoveBlobs Method


BlobRemovalOptions Object Members

BlobRemovalOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property areaHeight | The height of the image area where the blob removal process will search.
Public Property areaWidth | The width of the image area where the blob removal process will search.
Public Property areaX | The X-coordinate of the image area where the blob removal process will search.
Public Property areaY | The Y-coordinate of the image area where the blob removal process will search.
Public Property maximumPixelCount | Gets and sets the maximum number of pixels for an object to be considered a blob for removal purposes.
Public Property minimumDensity | Gets and sets the ratio of black pixels to all pixels within the convex hull of an object.
Public Property minimumPixelCount | Gets and sets the minimum number of pixels for an object to be considered a blob for removal purposes.

See Also

BlobRemovalOptions Overview | RemoveBlobs Method


areaHeight Property

areaHeight Property

Description

The height of the image area where the blob removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaHeight() As Long

Remarks

This property is used with the areaWidth, areaX and areaY to make up the rectangular area of the image for the blob removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlobRemovalOptions Object


areaWidth Property

areaWidth Property

Description

The width of the image area where the blob removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaWidth() As Long

Remarks

This property is used with the areaHeight, areaX and areaY to make up the rectangular area of the image for the blob removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlobRemovalOptions Object


areaX Property

areaX Property

Description

The X-coordinate of the image area where the blob removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaX() As Long

Remarks

This property is used with the areaWidth, areaHeight and areaY to make up the rectangular area of the image for the blob removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlobRemovalOptions Object


areaY Property

areaY Property

Description

The Y-coordinate of the image area where the blob removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaY() As Long

Remarks

This property is used with the areaWidth, areaX and areaHeight to make up the rectangular area of the image for the blob removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

BlobRemovalOptions Object


maximumPixelCount Property

maximumPixelCount Property

Description

Gets and sets the maximum number of pixels for an object to be considered a blob for removal purposes.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumPixelCount() As Long

Return Type

A long value which represents the maximum number of pixels for an object to be considered a blob for removal purposes.

Remarks

The default value is 10,000.

Valid values are anything larger than MinimumPixelCount.

See Also

BlobRemovalOptions Object


minimumDensity Property

minimumDensity Property

Description

Gets and sets the ratio of black pixels to all pixels within the convex hull of an object.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumDensity() As Long

Remarks

The default value is 50.

Valid values are 0 to 100.

Convex hull is the smallest non concave polygon that can be made around an object.

See Also

BlobRemovalOptions Object


minimumPixelCount Property

minimumPixelCount Property

Description

Gets and sets the minimum number of pixels for an object to be considered a blob for removal purposes.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumPixelCount() As Long

Remarks

The default value is 300.

Valid values are 1 to {no limit}.

See Also

BlobRemovalOptions Object


BlobRemovalResults Object

BlobRemovalResults Object
See Also Members Send Feedback

Description

This object contains exposed parameters that control the auto border removal process.

See Also

BlobRemovalResults Members


BlobRemovalResults Object Members

BlobRemovalResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property countOfBlobsFound | Gets and sets the number of blobs found and removed.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified during the blob removal process.

See Also

BlobRemovalResults Overview


countOfBlobsFound Property

countOfBlobsFound Property

Description

Gets and sets the number of blobs found and removed.

Property type

Read-only property

Syntax

Visual Basic
Public Property countOfBlobsFound() As Long

Return Type

A long value which represents the number of blobs.

Remarks

The default value is 0.

See Also

BlobRemovalResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified during the blob removal process.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Return Type

A boolean value which is True if the image was modified. Otherwise, False is returned.

Remarks

The default value is True.

See Also

BlobRemovalResults Object


BorderRemovalOptions Object

BorderRemovalOptions Object
See Also Members Send Feedback

Description

Contains parameters controlling border removal process.

Remarks

Using the default values, sometimes there is a thin (1-2 pixel wide) band around the image.

See Also

BorderRemovalOptions Members | RemoveBorder Method


BorderRemovalOptions Object Members

BorderRemovalOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property amountToExpandPage | Gets and sets the number of pixels to expand each of the four page edges.
Public Property borderSpeckSize | Gets and sets the maximum width or height (in pixels) of specks present in the border of the image.
Public Property cropBorder | Gets and sets a flag that indicates whether the detected border pixels should be removed from the image.
Public Property deskewBorder | Gets and sets a flag that indicates whether the image should be deskewed based on the angle of the detected border.
Public Property maximumPageHeight | Gets and sets the maximum expected page height, in pixels.
Public Property maximumPageWidth | Gets and sets the maximum expected page width, in pixels.
Public Property minimumConfidence | Gets and sets the minimum detection confidence required before correction will proceed.
Public Property minimumPageHeight | Gets and sets the minimum expected page height, in pixels.
Public Property minimumPageWidth | Gets and sets the minimum expected page width, in pixels.
Public Property padColor | Gets and sets the color to use for pixels that are added to the image or for pixels that replace border pixels.
Public Property pageSpeckSize | Gets and sets the maximum width or height (in pixels) of specks present in the interior (page) portion of the image.
Public Property quality | Gets and sets a value that indicates the amount of effort to expend analyzing the image to locate the border.
Public Property replaceBorder | Gets and sets a flag that indicates whether the detected border pixels should be replaced with the fill color.

See Also

BorderRemovalOptions Overview | RemoveBorder Method


amountToExpandPage Property

amountToExpandPage Property

Description

Gets and sets the number of pixels to expand each of the four page edges.

Property type

Read-write property

Syntax

Visual Basic
Public Property amountToExpandPage() As Long

Return Type

A long value which represents the pixel amount to expand the page in all four directions.

Remarks

The default value is 0.

Valid values are -1000 to 1000.

See Also

BorderRemovalOptions Object


borderSpeckSize Property

borderSpeckSize Property

Description

Gets and sets the maximum width or height (in pixels) of specks present in the border of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property borderSpeckSize() As Long

Remarks

The default value is 3.

Valid values are 0 to 100.

See Also

BorderRemovalOptions Object


cropBorder Property

cropBorder Property

Description

Gets and sets a flag that indicates whether the detected border pixels should be removed from the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property cropBorder() As Boolean

Remarks

The default value is True.

See Also

BorderRemovalOptions Object


deskewBorder Property

deskewBorder Property

Description

Gets and sets a flag that indicates whether the image should be deskewed based on the angle of the detected border.

Property type

Read-write property

Syntax

Visual Basic
Public Property deskewBorder() As Boolean

Remarks

The default value is True.

See Also

BorderRemovalOptions Object


maximumPageHeight Property

maximumPageHeight Property

Description

Gets and sets the maximum expected page height, in pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumPageHeight() As Long

Remarks

The default value is 0.

Valid values are 0 to 2,147,483,647.

Set this value as low as possible (while still being larger than the page size) to insure best results.

See Also

BorderRemovalOptions Object


maximumPageWidth Property

maximumPageWidth Property

Description

Gets and sets the maximum expected page width, in pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumPageWidth() As Long

Remarks

The default value is 0.

Valid values are 0 to 2,147,483,647.

Set this value as low as possible (while still being larger than the page size) to insure best results.

See Also

BorderRemovalOptions Object


minimumConfidence Property

minimumConfidence Property

Description

Gets and sets the minimum detection confidence required before correction will proceed.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumConfidence() As Long

Remarks

The default value is 50.

Valid values are 0 to 100.

If the detection confidence is less than this value, the image will not be modified.

See Also

BorderRemovalOptions Object


minimumPageHeight Property

minimumPageHeight Property

Description

Gets and sets the minimum expected page height, in pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumPageHeight() As Long

Remarks

The default value is 0.

Valid values are 0 to 2,147,483,647.

Set this value as high as possible (while still being smaller than the page height) to insure best results.

See Also

BorderRemovalOptions Object


minimumPageWidth Property

minimumPageWidth Property

Description

Gets and sets the minimum expected page width, in pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumPageWidth() As Long

Remarks

The default value is 0.

Valid values are 0 to 2,147,483,647.

Set this value as high as possible (while still being smaller than the page width) to insure best results.

See Also

BorderRemovalOptions Object


padColor Property

padColor Property

Description

Gets and sets the color to use for pixels that are added to the image or for pixels that replace border pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property padColor() As OLE_COLOR

Remarks

The default value is White.

See Also

BorderRemovalOptions Object


pageSpeckSize Property

pageSpeckSize Property

Description

Gets and sets the maximum width or height (in pixels) of specks present in the interior (page) portion of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property pageSpeckSize() As Long

Remarks

The default value is 2.

Valid values are 0 to 100.

See Also

BorderRemovalOptions Object


quality Property

quality Property

Description

Gets and sets a value that indicates the amount of effort to expend analyzing the image to locate the border.

Property type

Read-write property

Syntax

Visual Basic
Public Property quality() As Long

Remarks

The default value is 80.

Valid values are 1 to 100.

Set to a high value to insure the most accurate possible result and to a low value for fastest operation.

See Also

BorderRemovalOptions Object


replaceBorder Property

replaceBorder Property

Description

Gets and sets a flag that indicates whether the detected border pixels should be replaced with the fill color.

Property type

Read-write property

Syntax

Visual Basic
Public Property replaceBorder() As Boolean

Remarks

The default value is False.

See Also

BorderRemovalOptions Object


BorderRemovalResults Object

BorderRemovalResults Object
See Also Members Send Feedback

Description

This object contains output values from the auto border removal process.

See Also

BorderRemovalResults Members | RemoveBorder Method


BorderRemovalResults Object Members

BorderRemovalResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property confidence | Gets and sets the confidence of the border removal process.
Public Property detectedHorizontalAngle | Gets and sets the angle needed to correct the skew of the horizontal portion of the border (in degrees counter-clockwise).
Public Property detectedVerticalAngle | Gets and sets the angle needed to correct the skew of the vertical portion of the border (in degrees counter-clockwise).
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified during the border removal process.
Public Property pageHeight | Gets and sets the height of the detected page.
Public Property pageWidth | Gets and sets the width of the detected page.
Public Property pageX | Gets and sets the X coordinate of the top-left corner of the detected page.
Public Property pageY | Gets and sets the Y coordinate of the top-left corner of the detected page.

See Also

BorderRemovalResults Overview | RemoveBorder Method


confidence Property

confidence Property

Description

Gets and sets the confidence of the border removal process.

Property type

Read-only property

Syntax

Visual Basic
Public Property confidence() As Long

Return Type

A long value which represents the confidence value.

Remarks

The value range is between 0 and 100.

Higher values indicate a higher confidence that the border was accurately located.

See Also

BorderRemovalResults Object


detectedHorizontalAngle Property

detectedHorizontalAngle Property

Description

Gets and sets the angle needed to correct the skew of the horizontal portion of the border (in degrees counter-clockwise).

Property type

Read-only property

Syntax

Visual Basic
Public Property detectedHorizontalAngle() As Double

See Also

BorderRemovalResults Object


detectedVerticalAngle Property

detectedVerticalAngle Property

Description

Gets and sets the angle needed to correct the skew of the vertical portion of the border (in degrees counter-clockwise).

Property type

Read-only property

Syntax

Visual Basic
Public Property detectedVerticalAngle() As Double

See Also

BorderRemovalResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified during the border removal process.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Remarks

The default value is True.

See Also

BorderRemovalResults Object


pageHeight Property

pageHeight Property

Description

Gets and sets the height of the detected page.

Property type

Read-only property

Syntax

Visual Basic
Public Property pageHeight() As Long

Remarks

Default is 1936283168.

See Also

BorderRemovalResults Object


pageWidth Property

pageWidth Property

Description

Gets and sets the width of the detected page.

Property type

Read-only property

Syntax

Visual Basic
Public Property pageWidth() As Long

See Also

BorderRemovalResults Object


pageX Property

pageX Property

Description

Gets and sets the X coordinate of the top-left corner of the detected page.

Property type

Read-only property

Syntax

Visual Basic
Public Property pageX() As Long

See Also

BorderRemovalResults Object


pageY Property

pageY Property

Description

Gets and sets the Y coordinate of the top-left corner of the detected page.

Property type

Read-only property

Syntax

Visual Basic
Public Property pageY() As Long

See Also

BorderRemovalResults Object


Box Object

Box Object
See Also Members Send Feedback

Description

This object contains coordinates for a rectangular area where an object was located.

See Also

Box Members


Box Object Members

Box Object Members
See Also Overview Send Feedback

Public Properties

Public Property bottom | A value that indicates coordinate of bottom side of bounding box.
Public Property left | A value that indicates coordinate of left side of bounding box.
Public Property right | A value that indicates coordinate of right side of bounding box.
Public Property top | A value that indicates coordinate of top side of bounding box.

See Also

Box Overview


bottom Property

bottom Property

Description

A value that indicates coordinate of bottom side of bounding box.

Property type

Read-only property

Syntax

Visual Basic
Public Property bottom() As Long

See Also

Box Object


left Property

left Property

Description

A value that indicates coordinate of left side of bounding box.

Property type

Read-only property

Syntax

Visual Basic
Public Property left() As Long

See Also

Box Object


right Property

right Property

Description

A value that indicates coordinate of right side of bounding box.

Property type

Read-only property

Syntax

Visual Basic
Public Property right() As Long

See Also

Box Object


top Property

top Property

Description

A value that indicates coordinate of top side of bounding box.

Property type

Read-only property

Syntax

Visual Basic
Public Property top() As Long

See Also

Box Object


BoxCollection Collection

BoxCollection Collection
See Also Members Send Feedback

Description

This object contains a collection of rectangular bounding boxes for objects in an image.

Object Model

See Also

BoxCollection Members


BoxCollection Collection Members

BoxCollection Collection Members
See Also Overview Send Feedback

Public Methods

Public Method GetAt Returns a single collection value for the requested index.

Public Properties

Public Property count | Gets the number of items in the collection.
Public Property Item | Gets a specific member of a collection either by position or key.

See Also

BoxCollection Overview


GetAt Method

GetAt Method
index
0-based index for requested collection object.

Description

Returns a single collection value for the requested index.

Syntax

Visual Basic
Public Function GetAt( _
   ByVal index As Long _
) As Box

Parameters

index
0-based index for requested collection object.

Return Type

Box value from collection.

See Also

BoxCollection Collection


count Property

count Property

Description

Gets the number of items in the collection.

Property type

Read-only property

Syntax

Visual Basic
Public Property count() As Long

See Also

BoxCollection Collection


Item Property

Item Property
vIndex

Description

Gets a specific member of a collection either by position or key.

Property type

Read-only property

Syntax

Visual Basic
Public Property Item( _
   ByVal vIndex As Variant _
) As Box

Parameters

vIndex

See Also

BoxCollection Collection


BrightnessContrastOptions Object

BrightnessContrastOptions Object
See Also Members Send Feedback

Description

This object contains exposed parameters that control the AdjustBrightnessContrast process.

See Also

BrightnessContrastOptions Members


BrightnessContrastOptions Object Members

BrightnessContrastOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property adjustment | Gets and sets the type of contrast adjustment to perform on the image.
Public Property contrastLimitDark | Gets and sets the maximum contrast change for dark pixels.
Public Property contrastLimitLight | Gets and sets the maximum contrast change for light pixels.
Public Property contrastLimitMiddle | Gets and sets the maximum contrast change for middle-range pixels.
Public Property maximumPercentile | Gets and sets the highest brightness percentile pixels to target for adjustment.
Public Property minimumPercentile | Gets and sets the lowest brightness percentile pixels to target for adjustment.
Public Property quality | Gets and sets the amount of effort to expend analyzing the image to determine contrast.
Public Property targetBrightness | Gets and sets the target brightness level for background of adjusted image.
Public Property targetContrast | Gets and sets the target contrast between foreground and background for the adjusted image.
Public Property targetVariance | Gets and sets the largest allowable variance in brightness across the image.

See Also

BrightnessContrastOptions Overview


adjustment Property

adjustment Property

Description

Gets and sets the type of contrast adjustment to perform on the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property adjustment() As SF_BrightnessContrastAdjustment

Remarks

The default value is Automatic.

Note: The Automatic setting will compare the analysis results to the target values, and pick what it considers to be the best correction to use on the given image. Changing this value will let you skip the correction step, or force the adaptive or global correction method.

See Also

BrightnessContrastOptions Object


contrastLimitDark Property

contrastLimitDark Property

Description

Gets and sets the maximum contrast change for dark pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property contrastLimitDark() As Byte

Remarks

The default value is 127.

Valid values are 0 to 255.

Note: This value determines how far in either direction a pixel in this range is allowed to shift when corrected using adaptive correction. A value of 0 will prevent any change to light pixels, while a value of 255 will allow maximum enhancement of contrast.

See Also

BrightnessContrastOptions Object


contrastLimitLight Property

contrastLimitLight Property

Description

Gets and sets the maximum contrast change for light pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property contrastLimitLight() As Byte

Remarks

The default value is 127.

Valid values are 0 to 255.

Note: This value determines how far in either direction a pixel in this range is allowed to shift when corrected using adaptive correction. A value of 0 will prevent any change to light pixels, while a value of 255 will allow maximum enhancement of contrast.

See Also

BrightnessContrastOptions Object


contrastLimitMiddle Property

contrastLimitMiddle Property

Description

Gets and sets the maximum contrast change for middle-range pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property contrastLimitMiddle() As Byte

Remarks

The default value is 127.

Valid values are 0 to 255.

Note: This value determines how far in either direction a pixel in this range is allowed to shift when corrected using adaptive correction. A value of 0 will prevent any change to light pixels, while a value of 255 will allow maximum enhancement of contrast.

See Also

BrightnessContrastOptions Object


maximumPercentile Property

maximumPercentile Property

Description

Gets and sets the highest brightness percentile pixels to target for adjustment.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumPercentile() As Long

Remarks

The default value is 100.

Valid values are minimumPercentile to 101.

Note: This value sets the percentile brightness to be used for the contrast enhancement. For typical document images, the background color will be near the 50th percentile, so a value of 50 would push the background color to full brightness. The value 100 means to use the brightest pixel found, and a value of 101 means that the brightness will not be increased.

See Also

BrightnessContrastOptions Object


minimumPercentile Property

minimumPercentile Property

Description

Gets and sets the lowest brightness percentile pixels to target for adjustment.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumPercentile() As Long

Remarks

The default value is 0.

Valid values are -1 to maximumPercentile.

Note: This value sets the percentile brightness to be used for the contrast enhancement. For typical document images, the text color will be at or below the 1st percentile, so a value of 1 would push the text color to pure black. The value 0 means to use the darkest pixel found, and a value of -1 means that the brightness will not be decreased.

See Also

BrightnessContrastOptions Object


quality Property

quality Property

Description

Gets and sets the amount of effort to expend analyzing the image to determine contrast.

Property type

Read-write property

Syntax

Visual Basic
Public Property quality() As Byte

Remarks

The default value is 80.

Valid values are 1 to 100.

Note: This value sets the sampling density used during the brightness and contrast analysis. Small values will result in slightly faster performance, as well as a larger window size for adaptive correction. A high value will result in slightly slower performance, greater sensitivity to small regions of change, and a smaller window size for adaptive correction.

See Also

BrightnessContrastOptions Object


targetBrightness Property

targetBrightness Property

Description

Gets and sets the target brightness level for background of adjusted image.

Property type

Read-write property

Syntax

Visual Basic
Public Property targetBrightness() As Byte

Remarks

The default value is 225.

Valid values are 0 to 255.

Note: This value sets the target brightness level for the image background, calculated by using the 50th percentile brightness. If the calculated brightness is below the target, then a contrast correction method will be suggested.

See Also

BrightnessContrastOptions Object


targetContrast Property

targetContrast Property

Description

Gets and sets the target contrast between foreground and background for the adjusted image.

Property type

Read-write property

Syntax

Visual Basic
Public Property targetContrast() As Byte

Remarks

The default value is 127.

Valid values are 1 to 255.

Note: This value sets the target contrast for document images, where contrast is calculated by comparing the 50th and 1st percentile brightness across the image. Images that have a contrast below the target range will have a contrast correction method recommended.

See Also

BrightnessContrastOptions Object


targetVariance Property

targetVariance Property

Description

Gets and sets the largest allowable variance in brightness across the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property targetVariance() As Byte

Remarks

The default value is 25.

Valid values are 0 to 255.

Note: This value sets the allowable amount of change in the background color across an image. An example of this would be a book page scanned on a flatbed scanner, where one edge was darker than the rest due to the greater distances from the scanner bed. This image would have a relatively high background variance. The algorithm will suggest the adaptive correction method for images that exceed the allowable background variance.

See Also

BrightnessContrastOptions Object


BrightnessContrastResults Object

BrightnessContrastResults Object
See Also Members Send Feedback

Description

This object contains output values from the contrast adjustment process.

Object Model

See Also

BrightnessContrastResults Members


BrightnessContrastResults Object Members

BrightnessContrastResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property averageBackground | Gets a value indicating average brightness of the image background.
Public Property averageContrast | Gets a value indicating average contrast between background (median color of a region) and foreground (dark colors in a region).
Public Property backgroundVariance | Gets a value indicating variance in background brightness.
Public Property noiseRadius | Gets a value indicating average amount of brightness variation within the background.
Public Property percentileGraph | Gets a collection where each value indicates brightness of pixels at that percentile.
Public Property suggestion | Gets a value indicating suggested contrast adjustment mechanism.

See Also

BrightnessContrastResults Overview


averageBackground Property

averageBackground Property

Description

Gets a value indicating average brightness of the image background.

Property type

Read-only property

Syntax

Visual Basic
Public Property averageBackground() As Byte

Remarks

Note: This is calculated by looking at the median brightness across the image.

See Also

BrightnessContrastResults Object


averageContrast Property

averageContrast Property

Description

Gets a value indicating average contrast between background (median color of a region) and foreground (dark colors in a region).

Property type

Read-only property

Syntax

Visual Basic
Public Property averageContrast() As Byte

Remarks

Note: This estimates the amount of contrast between the background color and dark objects such as text and lines.

See Also

BrightnessContrastResults Object


backgroundVariance Property

backgroundVariance Property

Description

Gets a value indicating variance in background brightness.

Property type

Read-only property

Syntax

Visual Basic
Public Property backgroundVariance() As Byte

Remarks

Note: This is calculated by looking at the range of above median brightness across the image, which measures primarily high frequency changes.

See Also

BrightnessContrastResults Object


noiseRadius Property

noiseRadius Property

Description

Gets a value indicating average amount of brightness variation within the background.

Property type

Read-only property

Syntax

Visual Basic
Public Property noiseRadius() As Byte

Remarks

Note: This is a measure of very low frequency variations, such as those caused by scanning a book on a flatbed scanner, where one edge of the image is darker due to its greater distance from the flatbed.

See Also

BrightnessContrastResults Object


percentileGraph Property

percentileGraph Property

Description

Gets a collection where each value indicates brightness of pixels at that percentile.

Property type

Read-only property

Syntax

Visual Basic
Public Property percentileGraph() As ByteCollection

Remarks

Note: This information can be analyzed and used during process design to choose appropriate values for the adjustment settings, or used to make further decisions about an image.

See Also

BrightnessContrastResults Object


suggestion Property

suggestion Property

Description

Gets a value indicating suggested contrast adjustment mechanism.

Property type

Read-only property

Syntax

Visual Basic
Public Property suggestion() As SF_BrightnessContrastSuggestion

Remarks

Note: The suggestions depend on the required parameters. Images meeting the required parameters will not need to be corrected. Images with low averageContrast and low backgroundVariance should use global correct, while those with low averageContrast and high backgroundVariance should use adaptive correction. Images whose backgroundVariance is too high relative to the averageContrast will be reported as bad images.

See Also

BrightnessContrastResults Object


ByteCollection Collection

ByteCollection Collection
See Also Members Send Feedback

Description

This object contains a collection of byte-sized numeric values.

See Also

ByteCollection Members


ByteCollection Collection Members

ByteCollection Collection Members
See Also Overview Send Feedback

Public Methods

Public Method GetAt Returns a single collection value for the requested index.

Public Properties

Public Property count | Gets the number of items in the collection.
Public Property Item | Gets a specific member of a collection either by position or key.

See Also

ByteCollection Overview


GetAt Method

GetAt Method
index
0-based index for requested collection object.

Description

Returns a single collection value for the requested index.

Syntax

Visual Basic
Public Function GetAt( _
   ByVal index As Long _
) As Byte

Parameters

index
0-based index for requested collection object.

Return Type

Byte value from collection.

See Also

ByteCollection Collection


count Property

count Property

Description

Gets the number of items in the collection.

Property type

Read-only property

Syntax

Visual Basic
Public Property count() As Long

See Also

ByteCollection Collection


Item Property

Item Property
vIndex

Description

Gets a specific member of a collection either by position or key.

Property type

Read-only property

Syntax

Visual Basic
Public Property Item( _
   ByVal vIndex As Variant _
) As Byte

Parameters

vIndex

See Also

ByteCollection Collection


ColorDropOptions Object

ColorDropOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the ColorDrop process.

Object Model

See Also

ColorDropOptions Members


ColorDropOptions Object Members

ColorDropOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property colorRadiusList | Gets color radius list object.
Public Property dropToColor | Gets and sets color to which dropped colors will be converted.
Public Property extract | Gets and sets flag for extracting specified color regions and dropping all others to dropToColor.

See Also

ColorDropOptions Overview


colorRadiusList Property

colorRadiusList Property

Description

Gets color radius list object.

Property type

Read-write property

Syntax

Visual Basic
Public Property colorRadiusList() As ColorRadiusCollection

See Also

ColorDropOptions Object


dropToColor Property

dropToColor Property

Description

Gets and sets color to which dropped colors will be converted.

Property type

Read-write property

Syntax

Visual Basic
Public Property dropToColor() As OLE_COLOR

Remarks

The default value is White.

See Also

ColorDropOptions Object


extract Property

extract Property

Description

Gets and sets flag for extracting specified color regions and dropping all others to dropToColor.

Property type

Read-write property

Syntax

Visual Basic
Public Property extract() As Boolean

Remarks

The default value is False.

See Also

ColorDropOptions Object


ColorDropResults Object

ColorDropResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the ColorDrop enhancement result.

Remarks

This class contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

ColorDropResults Members


ColorDropResults Object Members

ColorDropResults Object Members
See Also Overview Send Feedback

See Also

ColorDropResults Overview


ColorFindingCollection Collection

ColorFindingCollection Collection
See Also Members Send Feedback

Description

This object contains a collection of SF_ColorFinding values.

See Also

ColorFindingCollection Members


ColorFindingCollection Collection Members

ColorFindingCollection Collection Members
See Also Overview Send Feedback

Public Methods

Public Method Contains | This method provides an easy way to check for the presence of a single value in the collection.
Public Method GetAt | Returns a single collection value for the requested index.

Public Properties

Public Property count | Gets the number of items in the collection.
Public Property Item | Gets a specific member of a collection either by position or key.

See Also

ColorFindingCollection Overview


Contains Method

Contains Method
finding

Description

This method provides an easy way to check for the presence of a single value in the collection.

Syntax

Visual Basic
Public Function Contains( _
   ByVal finding As SF_ColorFindings _
) As Boolean

Parameters

finding
Value | Description
SF_ColorFindings_Unsaturated | Set if overall saturation of the image is less than MinimumSaturation.
SF_ColorFindings_NoItems | No significant saturated items found in the image.
SF_ColorFindings_FewItems | Indicates that large, saturated objects were found, but not a number sufficient to trigger an "is color" result.
SF_ColorFindings_SmallItems | Indicates that objects of more than 50% of MinimumSize, but less than MinimumSize, were found.
SF_ColorFindings_Saturated | Indicates the overall saturation of the image was above MinimumSaturation.
SF_ColorFindings_FoundItems | Indicates that the image had a sufficient number of large, saturated color objects.
SF_ColorFindings_PaperColorIgnored | Image is more that 50% of MiminumSaturation and dominant hue pixels were ignored.

Return Type

VARIANT_BOOL

- VARIANT_TRUE if finding value is contained in collection,

- VARIANT_FALSE otherwise

See Also

ColorFindingCollection Collection


GetAt Method

GetAt Method
index
0-based index for requested collection object.

Description

Returns a single collection value for the requested index.

Syntax

Visual Basic
Public Function GetAt( _
   ByVal index As Long _
) As SF_ColorFindings

Parameters

index
0-based index for requested collection object.

See Also

ColorFindingCollection Collection


count Property

count Property

Description

Gets the number of items in the collection.

Property type

Read-only property

Syntax

Visual Basic
Public Property count() As Long

See Also

ColorFindingCollection Collection


Item Property

Item Property
vIndex

Description

Gets a specific member of a collection either by position or key.

Property type

Read-only property

Syntax

Visual Basic
Public Property Item( _
   ByVal vIndex As Variant _
) As SF_ColorFindings

Parameters

vIndex

See Also

ColorFindingCollection Collection


ColorRadius Object

ColorRadius Object
See Also Members Send Feedback

Description

Color and radius structure used by ImageDetergent and ColorDrop.

See Also

ColorRadius Members


ColorRadius Object Members

ColorRadius Object Members
See Also Overview Send Feedback

Public Properties

Public Property adaptive | Gets and sets flag for adaptive color determination based on image data.
Public Property color | Gets and sets the color value.
Public Property radius | Gets and sets radius around color value in the RGB space.

See Also

ColorRadius Overview


adaptive Property

adaptive Property

Description

Gets and sets flag for adaptive color determination based on image data.

Property type

Read-write property

Syntax

Visual Basic
Public Property adaptive() As Boolean

Remarks

The default value is False.

See Also

ColorRadius Object


color Property

color Property

Description

Gets and sets the color value.

Property type

Read-write property

Syntax

Visual Basic
Public Property color() As OLE_COLOR

See Also

ColorRadius Object


radius Property

radius Property

Description

Gets and sets radius around color value in the RGB space.

Property type

Read-write property

Syntax

Visual Basic
Public Property radius() As Long

Remarks

The default value is 0.

Valid values are 0 to 884.

See Also

ColorRadius Object


ColorRadiusCollection Collection

ColorRadiusCollection Collection
See Also Members Send Feedback

Description

This object contains a collection of ColorRadius objects.

Object Model

See Also

ColorRadiusCollection Members


ColorRadiusCollection Collection Members

ColorRadiusCollection Collection Members
See Also Overview Send Feedback

Public Methods

Public Method Add | Adds a single object to the end of the collection.
Public Method Clear | Clears the collection by releasing all objects.
Public Method GetAt | Returns a single collection value for the requested index.
Public Method Insert | Inserts a single object at the specified location in the collection.
Public Method Remove | Removes a single object from the collection.

Public Properties

Public Property count | Gets the number of items in the collection.
Public Property Item | Gets a specific member of a collection either by position or key.

See Also

ColorRadiusCollection Overview


Add Method

Add Method
color
ColorRadius object to add to the collection.

Description

Adds a single object to the end of the collection.

Syntax

Visual Basic
Public Sub Add( _
   ByVal color As ColorRadius _
)

Parameters

color
ColorRadius object to add to the collection.

See Also

ColorRadiusCollection Collection


Clear Method

Clear Method

Description

Clears the collection by releasing all objects.

Syntax

Visual Basic
Public Sub Clear()

See Also

ColorRadiusCollection Collection


GetAt Method

GetAt Method
index
0-based index for requested collection object.

Description

Returns a single collection value for the requested index.

Syntax

Visual Basic
Public Function GetAt( _
   ByVal index As Long _
) As ColorRadius

Parameters

index
0-based index for requested collection object.

Return Type

ColorRadius value from collection.

See Also

ColorRadiusCollection Collection


Insert Method

Insert Method
color
Object to insert into the collection.
index
0-based index for new object in the collection.

Description

Inserts a single object at the specified location in the collection.

Syntax

Visual Basic
Public Sub Insert( _
   ByVal color As ColorRadius, _
   ByVal index As Long _
)

Parameters

color
Object to insert into the collection.
index
0-based index for new object in the collection.

Remarks

All existing collection objects after the specified index are moved to one higher index.

See Also

ColorRadiusCollection Collection


Remove Method

Remove Method
index
0-based index for collection object to remove.

Description

Removes a single object from the collection.

Syntax

Visual Basic
Public Sub Remove( _
   ByVal index As Long _
)

Parameters

index
0-based index for collection object to remove.

See Also

ColorRadiusCollection Collection


count Property

count Property

Description

Gets the number of items in the collection.

Property type

Read-only property

Syntax

Visual Basic
Public Property count() As Long

See Also

ColorRadiusCollection Collection


Item Property

Item Property
vIndex

Description

Gets a specific member of a collection either by position or key.

Property type

Read-only property

Syntax

Visual Basic
Public Property Item( _
   ByVal vIndex As Variant _
) As ColorRadius

Parameters

vIndex

See Also

ColorRadiusCollection Collection


CombRemovalOptions Object

CombRemovalOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the comb removal process.

See Also

CombRemovalOptions Members


CombRemovalOptions Object Members

CombRemovalOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property areaHeight | Gets and sets the rectangular area of the image where the comb removal process will search.
Public Property areaWidth | Gets and sets the rectangular area of the image where the comb removal process will search.
Public Property areaX | Gets and sets the rectangular area of the image where the comb removal process will search.
Public Property areaY | Gets and sets the rectangular area of the image where the comb removal process will search.
Public Property combHeight | Gets and sets the typical height (in pixels) of a comb mark (measured from the top of the horizontal base line to the top of the mark).
Public Property combSpacing | Gets and sets the typical distance (in pixels) between comb marks.
Public Property horizontalLineThickness | Gets and sets the typical thickness (in pixels) of the horizontal lines that comprise the comb.
Public Property minimumCombLength | Gets and sets the minimum distance (in pixels) from the leftmost comb mark to the rightmost comb mark.
Public Property minimumConfidence | Gets and sets the confidence needed for an individual comb before it will be removed.
Public Property verticalLineThickness | Gets and sets the typical thickness (in pixels) of the vertical lines that comprise the comb.

See Also

CombRemovalOptions Overview


areaHeight Property

areaHeight Property

Description

Gets and sets the rectangular area of the image where the comb removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaHeight() As Long

Remarks

This property is used with the areaWidth, areaX and areaY to make up the rectangular area of the image for the comb removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

CombRemovalOptions Object


areaWidth Property

areaWidth Property

Description

Gets and sets the rectangular area of the image where the comb removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaWidth() As Long

Remarks

This property is used with the areaHeight, areaX and areaY to make up the rectangular area of the image for the comb removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

CombRemovalOptions Object


areaX Property

areaX Property

Description

Gets and sets the rectangular area of the image where the comb removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaX() As Long

Remarks

This property is used with the areaWidth, areaHeight and areaY to make up the rectangular area of the image for the comb removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

CombRemovalOptions Object


areaY Property

areaY Property

Description

Gets and sets the rectangular area of the image where the comb removal process will search.

Property type

Read-write property

Syntax

Visual Basic
Public Property areaY() As Long

Remarks

This property is used with the areaWidth, areaX and areaHeight to make up the rectangular area of the image for the comb removal process to perform clean up on.

When all area properties are set to zero (0) the operation will work on the whole image.

The default value is 0.

See Also

CombRemovalOptions Object


combHeight Property

combHeight Property

Description

Gets and sets the typical height (in pixels) of a comb mark (measured from the top of the horizontal base line to the top of the mark).

Property type

Read-write property

Syntax

Visual Basic
Public Property combHeight() As Long

Remarks

The default value is 20.

Valid values are 4 to 1000.

See Also

CombRemovalOptions Object


combSpacing Property

combSpacing Property

Description

Gets and sets the typical distance (in pixels) between comb marks.

Property type

Read-write property

Syntax

Visual Basic
Public Property combSpacing() As Long

Remarks

The default value is 25.

Valid values are 10 to 1000.

See Also

CombRemovalOptions Object


horizontalLineThickness Property

horizontalLineThickness Property

Description

Gets and sets the typical thickness (in pixels) of the horizontal lines that comprise the comb.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalLineThickness() As Long

Remarks

The default value is 4.

Valid values are 1 to 20.

See Also

CombRemovalOptions Object


minimumCombLength Property

minimumCombLength Property

Description

Gets and sets the minimum distance (in pixels) from the leftmost comb mark to the rightmost comb mark.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumCombLength() As Long

Remarks

The default value is 50.

Valid values are 10 to 2,147,483,647.

See Also

CombRemovalOptions Object


minimumConfidence Property

minimumConfidence Property

Description

Gets and sets the confidence needed for an individual comb before it will be removed.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumConfidence() As Long

Remarks

The default value is 50.

Valid values are 0 to 100.

See Also

CombRemovalOptions Object


verticalLineThickness Property

verticalLineThickness Property

Description

Gets and sets the typical thickness (in pixels) of the vertical lines that comprise the comb.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalLineThickness() As Long

Remarks

The default value is 4.

Valid values are 1 to 20.

See Also

CombRemovalOptions Object


CombRemovalResults Object

CombRemovalResults Object
See Also Members Send Feedback

Description

This object contains output values from the comb removal process.

See Also

CombRemovalResults Members


CombRemovalResults Object Members

CombRemovalResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property countOfCombsFound | Gets and sets the count of the combs meeting the given criteria that were found on the image.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified to remove combs.

See Also

CombRemovalResults Overview


countOfCombsFound Property

countOfCombsFound Property

Description

Gets and sets the count of the combs meeting the given criteria that were found on the image.

Property type

Read-only property

Syntax

Visual Basic
Public Property countOfCombsFound() As Long

See Also

CombRemovalResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified to remove combs.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

See Also

CombRemovalResults Object


DeskewOptions Object

DeskewOptions Object
See Also Members Send Feedback

Description

This object contains exposed parameters that control the deskew process.

Remarks

Deskew is the process of straightening an image by examining it and determining the appropriate amount of rotation needed for correct alignment. The detection process focuses on the content of the image, such as text and drawings, rather than the border. Deskew adjusts along the vertical and horizontal axes, optimizing each to provide the best image.

See Also

DeskewOptions Members | Deskew Method


DeskewOptions Object Members

DeskewOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property maintainOriginalSize | Gets and sets a flag to indicate whether the size of the image should be maintained unchanged, or allowed to change.
Public Property maximumAcceptableAngle | Gets and sets the maximum amount of skew (in degrees) that is considered acceptable by the caller.
Public Property minimumConfidence | Gets and sets the minimum detection confidence required before correction will proceed.
Public Property minimumCorrectableAngle | Gets and sets the minimum amount of skew (in degrees) that is considered correctable.
Public Property padColor | Gets and sets the color to use for pixels that are added to the image.
Public Property quality | Gets and sets a value that indicates the amount of effort to expend analyzing the image to determine skew.

See Also

DeskewOptions Overview | Deskew Method


maintainOriginalSize Property

maintainOriginalSize Property

Description

Gets and sets a flag to indicate whether the size of the image should be maintained unchanged, or allowed to change.

Property type

Read-write property

Syntax

Visual Basic
Public Property maintainOriginalSize() As Boolean

Remarks

The default value is false.

Typically, this will be false and the deskewed image will be slightly larger than the original image.

See Also

DeskewOptions Object


maximumAcceptableAngle Property

maximumAcceptableAngle Property

Description

Gets and sets the maximum amount of skew (in degrees) that is considered acceptable by the caller.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumAcceptableAngle() As Double

Remarks

The default value is 0.2.

Valid values are 0.0 to 2.0.

Angles less than or equal to this amount will not be corrected.

Note: This property will be deprecated in a future release. The minimumCorrectableAngle property should be used instead.

See Also

DeskewOptions Object


minimumConfidence Property

minimumConfidence Property

Description

Gets and sets the minimum detection confidence required before correction will proceed.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumConfidence() As Long

Remarks

The default value is 50.

Valid values are 0 to 100.

If the detection confidence is less than this value, the image will not be modified.

See Also

DeskewOptions Object


minimumCorrectableAngle Property

minimumCorrectableAngle Property

Description

Gets and sets the minimum amount of skew (in degrees) that is considered correctable.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumCorrectableAngle() As Double

Remarks

The default value is 0.2.

Valid values are 0.0 to 2.0.

Angles less than or equal to this amount will not be corrected.

See Also

DeskewOptions Object


padColor Property

padColor Property

Description

Gets and sets the color to use for pixels that are added to the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property padColor() As OLE_COLOR

Remarks

The default value is White.

Often, an image will be increased in size during skew correction to avoid discarding parts of the corners of the original image. Any color is acceptable, but the actual color used will be the nearest color that can be represented in the current image.

See Also

DeskewOptions Object


quality Property

quality Property

Description

Gets and sets a value that indicates the amount of effort to expend analyzing the image to determine skew.

Property type

Read-write property

Syntax

Visual Basic
Public Property quality() As Long

Remarks

The default value is 80.

Valid values are between 1 to 100.

See Also

DeskewOptions Object


DeskewResults Object

DeskewResults Object
See Also Members Send Feedback

Description

This object contains output values from the deskew process.

Remarks

Deskew is the process of straightening an image by examining it and determining the appropriate amount of rotation needed for correct alignment. The detection process focuses on the content of the image, such as text and drawings, rather than the border. Deskew adjusts along the vertical and horizontal axes, optimizing each to provide the best image.

See Also

DeskewResults Members


DeskewResults Object Members

DeskewResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property confidence | Gets and sets the confidence of the skew detection process.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified to correct skew.
Public Property rotationAngle | Gets and sets the angle (in degrees) needed to rotate the image counter-clockwise to correct the skew of the image.
Public Property variation | Gets and sets the amount of variation detected in the skew of the image.

See Also

DeskewResults Overview


confidence Property

confidence Property

Description

Gets and sets the confidence of the skew detection process.

Property type

Read-only property

Syntax

Visual Basic
Public Property confidence() As Long

Remarks

The valid value range is between 0 and 100.

Higher values indicating a higher confidence that the skew was accurately detected.

See Also

DeskewResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified to correct skew.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Remarks

This value will be True unless the detection confidence is less than minimumConfidence or the rotation angle is less than or equal to minimumCorrectableAngle.

See Also

DeskewResults Object


rotationAngle Property

rotationAngle Property

Description

Gets and sets the angle (in degrees) needed to rotate the image counter-clockwise to correct the skew of the image.

Property type

Read-only property

Syntax

Visual Basic
Public Property rotationAngle() As Double

Remarks

The valid value range is between -20 and 20.

Note: This value may be set to a value other than 0 even if the image was not modified. This will occur if the detection confidence is less than minimumConfidence or if the rotation angle is less than or equal to minimumCorrectableAngle.

See Also

DeskewResults Object


variation Property

variation Property

Description

Gets and sets the amount of variation detected in the skew of the image.

Property type

Read-only property

Syntax

Visual Basic
Public Property variation() As Long

Remarks

The valid value range is between 0 and 100.

Higher values indicating greater skew variation. This value will typically be high if the horizontal and vertical skews do not match or if different parts of the image are skewed by different amounts.

See Also

DeskewResults Object


DespeckleOptions Object

DespeckleOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the despeckle process.

See Also

DespeckleOptions Members | Despeckle Method


DespeckleOptions Object Members

DespeckleOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property speckHeight | Gets and sets the maximum pixel height that an object can have to be considered a speck.
Public Property speckWidth | Gets and sets the maximum pixel width that an object can have to be considered a speck.

See Also

DespeckleOptions Overview | Despeckle Method


speckHeight Property

speckHeight Property

Description

Gets and sets the maximum pixel height that an object can have to be considered a speck.

Property type

Read-write property

Syntax

Visual Basic
Public Property speckHeight() As Long

Return Type

A long value which represents the maximum speck height to remove from the image.

Remarks

The default value is 2.

Valid values are 1 to 100.

See Also

DespeckleOptions Object


speckWidth Property

speckWidth Property

Description

Gets and sets the maximum pixel width that an object can have to be considered a speck.

Property type

Read-write property

Syntax

Visual Basic
Public Property speckWidth() As Long

Return Type

A long value which represents the maximum speck width.

Remarks

The default value is 2.

Valid values are 1 to 100.

See Also

DespeckleOptions Object


DespeckleResults Object

DespeckleResults Object
See Also Members Send Feedback

Description

This object contains output values from the despeckle process.

Remarks

Despeckle is the process of removing random specks of noise from an image.

See Also

DespeckleResults Members


DespeckleResults Object Members

DespeckleResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property countOfSpecksFound | Gets and sets the number of specks found that met the input criteria.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified to remove specks.

See Also

DespeckleResults Overview


countOfSpecksFound Property

countOfSpecksFound Property

Description

Gets and sets the number of specks found that met the input criteria.

Property type

Read-only property

Syntax

Visual Basic
Public Property countOfSpecksFound() As Long

Return Type

A long value which represents the amount of specks found and removed.

See Also

DespeckleResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified to remove specks.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Remarks

This value will be True unless the countOfSpecksFound parameter is zero.

See Also

DespeckleResults Object


DetectColorOptions Object

DetectColorOptions Object
See Also Members Send Feedback

Description

This object contains exposed parameters that control the DetectColor process.

See Also

DetectColorOptions Members


DetectColorOptions Object Members

DetectColorOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property boxOverlap | Gets and sets the percentage of area (smaller box) that must intersect before bounding boxes are merged.
Public Property generateBoxes | Gets and sets a flag for whether to generate a list of bounding boxes in the results.
Public Property ignorePaperColor | A value that indicates whether to ignore the paper color.
Public Property minimumBrightness | Gets and sets the minimum brightness ("V" in HSV color space) required for a pixel to be considered "color".
Public Property minimumSaturation | Gets and sets the minimum saturation required for a pixel to be considered "color".
Public Property minimumSize | Gets and sets the minimum size, length or width in pixels, required for a saturated object to be considered colored data.
Public Property sensitivity | Gets and sets the number of saturated objects required for a high confidence IsColor result.

See Also

DetectColorOptions Overview


boxOverlap Property

boxOverlap Property

Description

Gets and sets the percentage of area (smaller box) that must intersect before bounding boxes are merged.

Property type

Read-write property

Syntax

Visual Basic
Public Property boxOverlap() As Byte

Remarks

The default value is 50.

Valid values are 0 to 100.

Note: This option is used when DetectColor is used to locate colored regions on the page. In some cases, regions of color, such as highlighter over text, will be broken down into many smaller regions of color. A value of 100 will result in no boxes being combined, even if one box is located entirely within another; a value of 0 will result in all boxes that intersect to any degree being combined.

See Also

DetectColorOptions Object


generateBoxes Property

generateBoxes Property

Description

Gets and sets a flag for whether to generate a list of bounding boxes in the results.

Property type

Read-write property

Syntax

Visual Basic
Public Property generateBoxes() As Boolean

Remarks

The default value is False.

Note: This option should be set to True when DetectColor is to be used to locate areas of color on the page. This will result in list of bounding boxes being generated for all areas that meet the minimum requirements for "color."

See Also

DetectColorOptions Object


ignorePaperColor Property

ignorePaperColor Property

Description

A value that indicates whether to ignore the paper color.

Property type

Read-write property

Syntax

Visual Basic
Public Property ignorePaperColor() As Boolean

Remarks

The default value is False.

See Also

DetectColorOptions Object


minimumBrightness Property

minimumBrightness Property

Description

Gets and sets the minimum brightness ("V" in HSV color space) required for a pixel to be considered "color".

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumBrightness() As Byte

Remarks

The default value is 100.

Valid values are 0 to 255.

See Also

DetectColorOptions Object


minimumSaturation Property

minimumSaturation Property

Description

Gets and sets the minimum saturation required for a pixel to be considered "color".

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumSaturation() As Byte

Remarks

The default value is 75.

Valid values are 0 to 255.

See Also

DetectColorOptions Object


minimumSize Property

minimumSize Property

Description

Gets and sets the minimum size, length or width in pixels, required for a saturated object to be considered colored data.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumSize() As Long

Remarks

The default value is 10.

Valid values are 1 to 10000.

See Also

DetectColorOptions Object


sensitivity Property

sensitivity Property

Description

Gets and sets the number of saturated objects required for a high confidence IsColor result.

Property type

Read-write property

Syntax

Visual Basic
Public Property sensitivity() As Byte

Remarks

The default value is 90.

Valid values are 0 to 100.

This value is not linear; it is used to control a sensitivity function that sets the object count threshold. A value of 100 will trigger on a single matching object, while lower values will require more objects to trigger an IsColor result. A value of zero will require thousands of objects for an IsColor result.

See Also

DetectColorOptions Object


DetectColorResults Object

DetectColorResults Object
See Also Members Send Feedback

Description

This object contains output values from the DetectColor process.

Object Model

See Also

DetectColorResults Members


DetectColorResults Object Members

DetectColorResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property averageSaturation | Gets a value indicating average saturation value for the image.
Public Property bigObjects | Gets a value indicating weighted count of color objects larger than DetectColorOptions.minimumSize.
Public Property boxList | Gets a collection where each member contains bounding box coordinates for one object in the image.
Public Property confidence | Gets a value indicating confidence level for the IsColor value.
Public Property Findings | Gets a collection with finding information from the color detection process.
Public Property isColor | Gets a value indicating whether image is considered to be color.
Public Property smallObjects | Gets a value indicating weighted count of objects near, but smaller than, DetectColorOptions.minimumSize.

See Also

DetectColorResults Overview


averageSaturation Property

averageSaturation Property

Description

Gets a value indicating average saturation value for the image.

Property type

Read-only property

Syntax

Visual Basic
Public Property averageSaturation() As Long

Remarks

Note: This value is calculated by sampling the image and calculating the mean saturation of the sampled pixels. If this value is above the value specified in DetectColorOptions.minimumSaturation, and the paper color is not ignored, then the image will be determined "color." If paper color is ignored, then an average saturation above the threshold will trigger a dropout of the background color.

See Also

DetectColorResults Object


bigObjects Property

bigObjects Property

Description

Gets a value indicating weighted count of color objects larger than DetectColorOptions.minimumSize.

Property type

Read-only property

Syntax

Visual Basic
Public Property bigObjects() As Long

Remarks

Note: Objects twice DetectColorOptions.minimumSize will count double, objects three times DetectColorOptions.minimumSize will count triple, etc. This value can be used to determine if the size you are using is appropriate for your images.

See Also

DetectColorResults Object


boxList Property

boxList Property

Description

Gets a collection where each member contains bounding box coordinates for one object in the image.

Property type

Read-only property

Syntax

Visual Basic
Public Property boxList() As BoxCollection

See Also

DetectColorResults Object


confidence Property

confidence Property

Description

Gets a value indicating confidence level for the IsColor value.

Property type

Read-only property

Syntax

Visual Basic
Public Property confidence() As Long

Remarks

Note: The confidence is expressed as a value from 0, indicating no confidence, to 100, indicating a high confidence. A low confidence result can be used to separate out images that might need manual processing, or to re-categorize images to another appropriate processing path.

See Also

DetectColorResults Object


Findings Property

Findings Property

Description

Gets a collection with finding information from the color detection process.

Property type

Read-only property

Syntax

Visual Basic
Public Property Findings() As ColorFindingCollection

Remarks

Note: This information will explain what factors influenced the IsColor result. This information can be used to further classify images, or to help when setting up the decision parameters for a class of images.

See Also

DetectColorResults Object


isColor Property

isColor Property

Description

Gets a value indicating whether image is considered to be color.

Property type

Read-only property

Syntax

Visual Basic
Public Property isColor() As Boolean

See Also

DetectColorResults Object


smallObjects Property

smallObjects Property

Description

Gets a value indicating weighted count of objects near, but smaller than, DetectColorOptions.minimumSize.

Property type

Read-only property

Syntax

Visual Basic
Public Property smallObjects() As Long

Remarks

Note: Objects just below DetectColorOptions.minimumSize will count near 1. Smaller objects will return smaller values, dropping to zero when they are below half of DetectColorOptions.minimumSize. Use this value to determine if the size you are using is appropriate for your images.

See Also

DetectColorResults Object


DilateOptions Object

DilateOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the dilate process.

Remarks

Dilation is the process of adding black pixels to the existing black pixels of an image.

See Also

DilateOptions Members | Dilate Method


DilateOptions Object Members

DilateOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property amount | Gets and sets the distance to extend pixels.
Public Property direction | Gets and sets the directions to apply the dilation. Pixels will be extended in these directions.
Public Property onlyDiagonal | Gets and sets a flag for whether pixels should only be extended in a diagonal direction.

See Also

DilateOptions Overview | Dilate Method


amount Property

amount Property

Description

Gets and sets the distance to extend pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property amount() As Long

Remarks

The default value is 1.

Valid values are 1 to 500.

See Also

DilateOptions Object


direction Property

direction Property

Description

Gets and sets the directions to apply the dilation. Pixels will be extended in these directions.

Property type

Read-write property

Syntax

Visual Basic
Public Property direction() As SF_EnhancementDirections

Remarks

The default value is All.

Typically, this is set to a single direction, a pair of directions, or All from the SF_EnhancementDirections enumeration.

See Also

DilateOptions Object


onlyDiagonal Property

onlyDiagonal Property

Description

Gets and sets a flag for whether pixels should only be extended in a diagonal direction.

Property type

Read-write property

Syntax

Visual Basic
Public Property onlyDiagonal() As Boolean

Remarks

The default value is False.

Note: This value can only be set to True if the Direction property is set to two adjacent directions.

See Also

DilateOptions Object


DilateResults Object

DilateResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Dilate enhancement result.

Remarks

This class contains no data. Its presence is used to determine that the operation has run successfully.

See Also

DilateResults Members


DilateResults Object Members

DilateResults Object Members
See Also Overview Send Feedback

See Also

DilateResults Overview


DotShadingRemovalOptions Object

DotShadingRemovalOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the dot shading removal process.

See Also

DotShadingRemovalOptions Members | RemoveDotShading Method


DotShadingRemovalOptions Object Members

DotShadingRemovalOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property densityAdjustment | Gets and sets a value used to adjust the expected density of dot shading areas.
Public Property horizontalSizeAdjustment | Gets and sets a value used to fine-tune the width of dots to remove.
Public Property maximumDotSize | Gets and sets the maximum width and height (in pixels) of individual dots to remove.
Public Property minimumAreaHeight | Gets and sets the height of the smallest dot-shaded area to process.
Public Property minimumAreaWidth | Gets and sets the width of the smallest dot-shaded area to process.
Public Property verticalSizeAdjustment | Gets and sets a value used to fine-tune the height of dots to remove.

See Also

DotShadingRemovalOptions Overview | RemoveDotShading Method


densityAdjustment Property

densityAdjustment Property

Description

Gets and sets a value used to adjust the expected density of dot shading areas.

Property type

Read-write property

Syntax

Visual Basic
Public Property densityAdjustment() As Long

Return Type

An long value which represents the expected density of shaded area.

Remarks

The default value is 0.

Valid values are -50 to +50.

Values from -5 to +5 cover nearly all typical cases.

Note: Negative numbers instruct the component to search for shaded areas with more white pixels than black pixels and positive numbers instruct the opcode to search for shaded areas with more black pixels than white ones.

See Also

DotShadingRemovalOptions Object


horizontalSizeAdjustment Property

horizontalSizeAdjustment Property

Description

Gets and sets a value used to fine-tune the width of dots to remove.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalSizeAdjustment() As Long

Remarks

The default value is 0.

Valid values are -100 to 100.

See Also

DotShadingRemovalOptions Object


maximumDotSize Property

maximumDotSize Property

Description

Gets and sets the maximum width and height (in pixels) of individual dots to remove.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumDotSize() As Long

Remarks

The default value is 5.

Valid values are 0 to 20.

See Also

DotShadingRemovalOptions Object


minimumAreaHeight Property

minimumAreaHeight Property

Description

Gets and sets the height of the smallest dot-shaded area to process.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumAreaHeight() As Long

Remarks

The default value is 50.

Valid values are 0 to 20000.

See Also

DotShadingRemovalOptions Object


minimumAreaWidth Property

minimumAreaWidth Property

Description

Gets and sets the width of the smallest dot-shaded area to process.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumAreaWidth() As Long

Remarks

The default value is 300.

Valid values are 0 to 20000.

See Also

DotShadingRemovalOptions Object


verticalSizeAdjustment Property

verticalSizeAdjustment Property

Description

Gets and sets a value used to fine-tune the height of dots to remove.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalSizeAdjustment() As Long

Remarks

The default value is 0.

Valid values are -100 to 100.

See Also

DotShadingRemovalOptions Object


DotShadingRemovalResults Object

DotShadingRemovalResults Object
See Also Members Send Feedback

Description

This object contains output values from the dot shading removal process.

See Also

DotShadingRemovalResults Members


DotShadingRemovalResults Object Members

DotShadingRemovalResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property countOfAreasFound | Gets and sets the number of dot shading areas found and removed.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified during the dot shading removal process.

See Also

DotShadingRemovalResults Overview


countOfAreasFound Property

countOfAreasFound Property

Description

Gets and sets the number of dot shading areas found and removed.

Property type

Read-only property

Syntax

Visual Basic
Public Property countOfAreasFound() As Long

See Also

DotShadingRemovalResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified during the dot shading removal process.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

See Also

DotShadingRemovalResults Object


Enhancements Object

Enhancements Object
See Also Members Send Feedback

Description

Contains a list which will only accept enhancement options used with the ScanFix component.

See Also

Enhancements Members


Enhancements Object Members

Enhancements Object Members
See Also Overview Send Feedback

Public Methods

Public Method AddOption | Adds the given Option to the collection.
Public Method ClearOptions | Clear all enhancement options from the collection.
Public Method ClearResults | Clear all enhancement results from the collection.
Public Method GetOption | Retrieve an element which corresponds to the the given index.
Public Method GetOptionType | Gets the type of enhancement that corresponds to the given index value.
Public Method GetResult | Gets the enhancement result that corresponds to the given index value.
Public Method GetResultType | Gets the enhancement result type that corresponds to the given index value.
Public Method InsertOption | Inserts the given Option into the collection at the given index.
Public Method ReadFromStream | Reads a specially-formatted stream and places the values into properties of this object.
Public Method RemoveOption | Remove an enhancement option which corresponds to the given index.
Public Method WriteToStream | Writes some properties of this object to a specially-formatted stream.

Public Properties

Public Property EnhancementCount | The count of enhancement options in the list.
Public Property ResultCount | The count of enhancement results in the list.

See Also

Enhancements Overview


AddOption Method

AddOption Method
Option
The object to add to the collection.

Description

Adds the given Option to the collection.

Syntax

Visual Basic
Public Function AddOption( _
   ByVal Option As Object _
) As Long

Parameters

Option
The object to add to the collection.

Return Type

The zero-based index of the newly added element.

See Also

Enhancements Object


ClearOptions Method

ClearOptions Method

Description

Clear all enhancement options from the collection.

Syntax

Visual Basic
Public Sub ClearOptions()

See Also

Enhancements Object


ClearResults Method

ClearResults Method

Description

Clear all enhancement results from the collection.

Syntax

Visual Basic
Public Sub ClearResults()

See Also

Enhancements Object


GetOption Method

GetOption Method
index
The zero-based index which corresponds to the element to retrieve.

Description

Retrieve an element which corresponds to the the given index.

Syntax

Visual Basic
Public Function GetOption( _
   ByVal index As Long _
) As Object

Parameters

index
The zero-based index which corresponds to the element to retrieve.

See Also

Enhancements Object


GetOptionType Method

GetOptionType Method
index
The zero-based index which corresponds to the element to retrieve the type of.

Description

Gets the type of enhancement that corresponds to the given index value.

Syntax

Visual Basic
Public Function GetOptionType( _
   ByVal index As Long _
) As SF_Enhancements

Parameters

index
The zero-based index which corresponds to the element to retrieve the type of.

See Also

Enhancements Object


GetResult Method

GetResult Method
index
The zero-based index which corresponds to the element to retrieve the result of.

Description

Gets the enhancement result that corresponds to the given index value.

Syntax

Visual Basic
Public Function GetResult( _
   ByVal index As Long _
) As Object

Parameters

index
The zero-based index which corresponds to the element to retrieve the result of.

See Also

Enhancements Object


GetResultType Method

GetResultType Method
index
The zero-based index which corresponds to the element to retrieve and get the result type for.

Description

Gets the enhancement result type that corresponds to the given index value.

Syntax

Visual Basic
Public Function GetResultType( _
   ByVal index As Long _
) As SF_Enhancements

Parameters

index
The zero-based index which corresponds to the element to retrieve and get the result type for.

See Also

Enhancements Object


InsertOption Method

InsertOption Method
index
The zero-based index where this method will place the element. If the value of this parameter is equal to the original number of elements in the collection, this method will perform the same operation as the AddOption method.
Option
The enhancement option to insert into the collection at the given index.

Description

Inserts the given Option into the collection at the given index.

Syntax

Visual Basic
Public Sub InsertOption( _
   ByVal index As Long, _
   ByVal Option As Object _
)

Parameters

index
The zero-based index where this method will place the element. If the value of this parameter is equal to the original number of elements in the collection, this method will perform the same operation as the AddOption method.
Option
The enhancement option to insert into the collection at the given index.

Remarks

This method inserts the given Option into the collection at the given index. It moves all elements (if any) that follow the newly added element back one place (their indices will be one greater than they were.)

See Also

Enhancements Object


ReadFromStream Method

ReadFromStream Method
sf
An instance of the ScanFix component.
Stream
A stream that the WriteToStream method created.

Description

Reads a specially-formatted stream and places the values into properties of this object.

Syntax

Visual Basic
Public Sub ReadFromStream( _
   ByVal sf As ScanFix, _
   ByVal Stream As String _
)

Parameters

sf
An instance of the ScanFix component.
Stream
A stream that the WriteToStream method created.

Remarks

This method reads a stream, which contains the values of properties for this object. It provides a convenient way to store and retrieve the values and preserves as much future compatibility as possible.

This method should read any stream that the WriteToStream method created, even if an older version of this toolkit created it. This method will fail to read a stream that a newer version of this toolkit created.

Note: You should retrieve the value for the stream from the Operations property of a FormDirector FormSetFile object. When the Type property of that object is "ScanFix/Enhancement", the Content property contains a string that you should send to this method.

The properties that this method reads from the stream are the ScanFix enhancements normally added using the AddOption Method.

See Also

Enhancements Object | Streaming Information


RemoveOption Method

RemoveOption Method
index
The zero-based index where this method will remove the element.

Description

Remove an enhancement option which corresponds to the given index.

Syntax

Visual Basic
Public Sub RemoveOption( _
   ByVal index As Long _
)

Parameters

index
The zero-based index where this method will remove the element.

Remarks

This method removes the given Option from the collection at the given index. It moves all elements (if any) that follow the removed element up one place (their indices will be one less than they were).

See Also

Enhancements Object


WriteToStream Method

WriteToStream Method
sf
An instance of the ScanFix component.

Description

Writes some properties of this object to a specially-formatted stream.

Syntax

Visual Basic
Public Function WriteToStream( _
   ByVal sf As ScanFix _
) As String

Parameters

sf
An instance of the ScanFix component.

Return Type

A stream that can be reloaded using ReadFromStream.

Remarks

This method writes certain properties of this object to a stream. The stream is intended for use only by the ReadFromStream method and its format may change in a future release of this toolkit. However, even if the format changes, future versions of this toolkit will be able to read strings that this method generates.

Note: You should save the stream in the Operations property of a FormDirector FormSetFile object. You should set the Type to "ScanFix/Enhancement" and the Content to the value that this method returns.

The properties that this method writes to the stream are the ScanFix enhancements normally added using the AddOption Method.

See Also

Enhancements Object | Streaming Information


EnhancementCount Property

EnhancementCount Property

Description

The count of enhancement options in the list.

Property type

Read-only property

Syntax

Visual Basic
Public Property EnhancementCount() As Long

See Also

Enhancements Object


ResultCount Property

ResultCount Property

Description

The count of enhancement results in the list.

Property type

Read-only property

Syntax

Visual Basic
Public Property ResultCount() As Long

See Also

Enhancements Object


ErodeOptions Object

ErodeOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the erode process.

Remarks

Erosion is the process of removing the specified number of black pixels from the existing black pixels from the specified edge or edges of an image.

See Also

ErodeOptions Members | Erode Method


ErodeOptions Object Members

ErodeOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property amount | The amount property specifies the amount of pixels to erode black pixels.
Public Property direction | Gets and sets directions to apply the erosion. Pixels will be reduced in these directions.
Public Property onlyDiagonal | The onlyDiagonal property specifies whether black pixels should only be eroded in a diagonal direction.

See Also

ErodeOptions Overview | Erode Method


amount Property

amount Property

Description

The amount property specifies the amount of pixels to erode black pixels.

Property type

Read-write property

Syntax

Visual Basic
Public Property amount() As Long

Remarks

The default value is 1.

Valid values are 1 to 500.

See Also

ErodeOptions Object


direction Property

direction Property

Description

Gets and sets directions to apply the erosion. Pixels will be reduced in these directions.

Property type

Read-write property

Syntax

Visual Basic
Public Property direction() As SF_EnhancementDirections

Remarks

The default value is All.

Typically, this is set to a single direction, a pair of directions, or All from the SF_EnhancementDirections enumeration.

See Also

ErodeOptions Object


onlyDiagonal Property

onlyDiagonal Property

Description

The onlyDiagonal property specifies whether black pixels should only be eroded in a diagonal direction.

Property type

Read-write property

Syntax

Visual Basic
Public Property onlyDiagonal() As Boolean

Remarks

The default value is False.

This value can only be set to True if the direction property is set to two adjacent directions. Typically, this is set to False. It is an error to set this to True if direction is not set to a pair of adjacent directions.

See Also

ErodeOptions Object


ErodeResults Object

ErodeResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Erode enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

ErodeResults Members


ErodeResults Object Members

ErodeResults Object Members
See Also Overview Send Feedback

See Also

ErodeResults Overview


FilterAverageOptions Object

FilterAverageOptions Object
See Also Members Send Feedback

Description

This object contains parameters for an Average filter process.

See Also

FilterAverageOptions Members


FilterAverageOptions Object Members

FilterAverageOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property height | Gets and sets the height of filter.
Public Property width | Gets and sets the width of filter.

See Also

FilterAverageOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterAverageOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Height} - 1.

See Also

FilterAverageOptions Object


height Property

height Property

Description

Gets and sets the height of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterAverageOptions Object


width Property

width Property

Description

Gets and sets the width of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterAverageOptions Object


FilterCloseOptions Object

FilterCloseOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Close filter process.

See Also

FilterCloseOptions Members


FilterCloseOptions Object Members

FilterCloseOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property height | Gets and sets the height of filter.
Public Property width | Gets and sets the width of filter.

See Also

FilterCloseOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterCloseOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Height} - 1.

See Also

FilterCloseOptions Object


height Property

height Property

Description

Gets and sets the height of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterCloseOptions Object


width Property

width Property

Description

Gets and sets the width of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterCloseOptions Object


FilterCustomOptions Object

FilterCustomOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Custom filter process.

Object Model

See Also

FilterCustomOptions Members


FilterCustomOptions Object Members

FilterCustomOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property divisor | Gets and sets the matrix divisor used by custom filter.
Public Property offset | Gets and sets value for offset added to output of the convolution, used to bias the result up or down.
Public Property weights | Gets and sets filter weights matrix.

See Also

FilterCustomOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterCustomOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterCustomOptions Object


divisor Property

divisor Property

Description

Gets and sets the matrix divisor used by custom filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property divisor() As Long

Remarks

The default value is 0.

Valid values are 1 to {no limit}.

See Also

FilterCustomOptions Object


offset Property

offset Property

Description

Gets and sets value for offset added to output of the convolution, used to bias the result up or down.

Property type

Read-write property

Syntax

Visual Basic
Public Property offset() As Long

Remarks

The default value is 0.

Valid values are -{no limit} to {no limit}.

See Also

FilterCustomOptions Object


weights Property

weights Property

Description

Gets and sets filter weights matrix.

Property type

Read-write property

Syntax

Visual Basic
Public Property weights() As WeightMatrix

See Also

FilterCustomOptions Object


FilterGaussianOptions Object

FilterGaussianOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Gaussian filter process.

See Also

FilterGaussianOptions Members


FilterGaussianOptions Object Members

FilterGaussianOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property height | Gets and sets the height of filter.
Public Property width | Gets and sets the width of filter.

See Also

FilterGaussianOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterGaussianOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Height} - 1.

See Also

FilterGaussianOptions Object


height Property

height Property

Description

Gets and sets the height of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterGaussianOptions Object


width Property

width Property

Description

Gets and sets the width of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterGaussianOptions Object


FilterLaplacianOptions Object

FilterLaplacianOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Laplacian filter process. (A "placeholder" - used only for adding Laplacian filter to Enhancements.)

See Also

FilterLaplacianOptions Members


FilterLaplacianOptions Object Members

FilterLaplacianOptions Object Members
See Also Overview Send Feedback

See Also

FilterLaplacianOptions Overview


FilterMedianOptions Object

FilterMedianOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Median filter process.

See Also

FilterMedianOptions Members


FilterMedianOptions Object Members

FilterMedianOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property height | Gets and sets the height of filter.
Public Property width | Gets and sets the width of filter.

See Also

FilterMedianOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterMedianOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Height} - 1.

See Also

FilterMedianOptions Object


height Property

height Property

Description

Gets and sets the height of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterMedianOptions Object


width Property

width Property

Description

Gets and sets the width of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterMedianOptions Object


FilterOpenOptions Object

FilterOpenOptions Object
See Also Members Send Feedback

Description

This object contains parameters for an Open filter process.

See Also

FilterOpenOptions Members


FilterOpenOptions Object Members

FilterOpenOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property height | Gets and sets the height of filter.
Public Property width | Gets and sets the width of filter.

See Also

FilterOpenOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterOpenOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Height} - 1.

See Also

FilterOpenOptions Object


height Property

height Property

Description

Gets and sets the height of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterOpenOptions Object


width Property

width Property

Description

Gets and sets the width of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterOpenOptions Object


FilterPrewittOptions Object

FilterPrewittOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Prewitt filter process.

See Also

FilterPrewittOptions Members


FilterPrewittOptions Object Members

FilterPrewittOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property direction A value that indicates Horizontal or Vertical direction for the edge-detecting filter to operate.

See Also

FilterPrewittOptions Overview


direction Property

direction Property

Description

A value that indicates Horizontal or Vertical direction for the edge-detecting filter to operate.

Property type

Read-write property

Syntax

Visual Basic
Public Property direction() As SF_FilterDirection

Remarks

The default value is Horizontal.

See Also

FilterPrewittOptions Object


FilterResults Object

FilterResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Filter enhancement result.

See Also

FilterResults Members


FilterResults Object Members

FilterResults Object Members
See Also Overview Send Feedback

See Also

FilterResults Overview


FilterSobelOptions Object

FilterSobelOptions Object
See Also Members Send Feedback

Description

This object contains parameters for a Sobel filter process.

See Also

FilterSobelOptions Members


FilterSobelOptions Object Members

FilterSobelOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property direction A value that indicates Horizontal or Vertical direction for the edge-detecting filter to operate.

See Also

FilterSobelOptions Overview


direction Property

direction Property

Description

A value that indicates Horizontal or Vertical direction for the edge-detecting filter to operate.

Property type

Read-write property

Syntax

Visual Basic
Public Property direction() As SF_FilterDirection

Remarks

The default value is Horizontal.

See Also

FilterSobelOptions Object


FilterUnsharpOptions Object

FilterUnsharpOptions Object
See Also Members Send Feedback

Description

This object contains parameters for an Unsharp filter process.

See Also

FilterUnsharpOptions Members


FilterUnsharpOptions Object Members

FilterUnsharpOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property centerX | Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property centerY | Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.
Public Property height | Gets and sets the height of filter.
Public Property width | Gets and sets the width of filter.

See Also

FilterUnsharpOptions Overview


centerX Property

centerX Property

Description

Gets and sets horizontal value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerX() As Long

Remarks

The default value is -1.

Valid values are 0 to {Width} - 1.

See Also

FilterUnsharpOptions Object


centerY Property

centerY Property

Description

Gets and sets vertical value for center point of filter. A value of -1 will automatically set the center based on region size.

Property type

Read-write property

Syntax

Visual Basic
Public Property centerY() As Long

Remarks

The default value is -1.

Valid values are 0 to {Height} - 1.

See Also

FilterUnsharpOptions Object


height Property

height Property

Description

Gets and sets the height of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterUnsharpOptions Object


width Property

width Property

Description

Gets and sets the width of filter.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 3.

Valid values are 1 to {no limit}.

See Also

FilterUnsharpOptions Object


FlipOptions Object

FlipOptions Object
See Also Members Send Feedback

Description

Defines a place holder class for the Flip image enhancement.

Remarks

This object is added to an enhancement list to be processed along with other enhancements on an image.

See Also

FlipOptions Members


FlipOptions Object Members

FlipOptions Object Members
See Also Overview Send Feedback

See Also

FlipOptions Overview


FlipResults Object

FlipResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Flip enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

FlipResults Members


FlipResults Object Members

FlipResults Object Members
See Also Overview Send Feedback

See Also

FlipResults Overview


GetRectangleOptions Object

GetRectangleOptions Object
See Also Members Send Feedback

Description

Parameters used in replacing the current image with a subset of the original image.

Remarks

An instance of this class can be placed in the Enhancements list to be processed in a sequence of enhancements.

If the specified area extends beyond the boundaries of the original image, either pixels of the padColor will be added or an error will occur depending upon the value of the allowPadding parameter.

See Also

GetRectangleOptions Members


GetRectangleOptions Object Members

GetRectangleOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property allowPadding | Gets and sets a flag indicating whether padding or an exception occurs if the 'area' is outside of the image bounds.
Public Property height | Gets and sets the height of area to extract from the original image.
Public Property padColor | Gets and sets the color used for new pixels if necessary.
Public Property width | Gets and sets the width of area to extract from the original image.
Public Property x | Gets and sets the horizontal coordinate of area to extract from the original image.
Public Property y | Gets and sets the vertical coordinate of area to extract from the original image.

See Also

GetRectangleOptions Overview


allowPadding Property

allowPadding Property

Description

Gets and sets a flag indicating whether padding or an exception occurs if the 'area' is outside of the image bounds.

Property type

Read-write property

Syntax

Visual Basic
Public Property allowPadding() As Boolean

Remarks

The default value is True.

Note: True indicates that the image should be padded (using padColor) if the requested area is outside the original image bounds.

False indicates an exception occurs if the requested area is outside the original image bounds.

See Also

GetRectangleOptions Object


height Property

height Property

Description

Gets and sets the height of area to extract from the original image.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Remarks

The default value is 0.

This coordinate works together with the width, x and y properties to make up the rectangular area on the image.

See Also

GetRectangleOptions Object


padColor Property

padColor Property

Description

Gets and sets the color used for new pixels if necessary.

Property type

Read-write property

Syntax

Visual Basic
Public Property padColor() As OLE_COLOR

Remarks

The default value is White.

This property uses the System.Drawing.Color object which contains a list of colors to choose from.

See Also

GetRectangleOptions Object


width Property

width Property

Description

Gets and sets the width of area to extract from the original image.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

The default value is 0.

This coordinate works together with the height, x and y properties to make up the rectangular area on the image.

See Also

GetRectangleOptions Object


x Property

x Property

Description

Gets and sets the horizontal coordinate of area to extract from the original image.

Property type

Read-write property

Syntax

Visual Basic
Public Property x() As Long

Remarks

The default value is 0.

This coordinate works together with the height, width and y properties to make up the rectangular area on the image.

See Also

GetRectangleOptions Object


y Property

y Property

Description

Gets and sets the vertical coordinate of area to extract from the original image.

Property type

Read-write property

Syntax

Visual Basic
Public Property y() As Long

Remarks

The default value is 0.

This coordinate works together with the height, x and width properties to make up the rectangular area on the image.

See Also

GetRectangleOptions Object


GetRectangleResults Object

GetRectangleResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the GetRectangle enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

GetRectangleResults Members


GetRectangleResults Object Members

GetRectangleResults Object Members
See Also Overview Send Feedback

See Also

GetRectangleResults Overview


HueRadius Object

HueRadius Object
See Also Members Send Feedback

Description

Hue and radius structure used by VirtualBulb.

See Also

HueRadius Members


HueRadius Object Members

HueRadius Object Members
See Also Overview Send Feedback

Public Properties

Public Property adaptive | Gets and sets flag for adaptive color determination based on image data.
Public Property brightness | Gets and sets flag for hue-specific brightness correction.
Public Property hue | Gets and sets hue value.
Public Property radius | Gets and sets size of region of effect around hue value in HSV colorspace.

See Also

HueRadius Overview


adaptive Property

adaptive Property

Description

Gets and sets flag for adaptive color determination based on image data.

Property type

Read-write property

Syntax

Visual Basic
Public Property adaptive() As Boolean

Remarks

The default value is False.

Note: Setting this flag instructs the algorithm to analyze the image and change the value of the hue up to 21 in either direction (1/12 of the spectrum) to match the nearest peak in the hue histogram of the image. This is the most useful with narrow drop widths, where a slightly off-center hue can leave an undesirable amount of data on the image.

Use of this adaptive feature is slower, however, as it requires analysis of each individual image before processing to find the approximate peak. A larger radius, if it can safely be used, will provide better performance.

See Also

HueRadius Object


brightness Property

brightness Property

Description

Gets and sets flag for hue-specific brightness correction.

Property type

Read-write property

Syntax

Visual Basic
Public Property brightness() As Boolean

Remarks

The default value is False.

Note: This option attempts to determine the average level of brightness of the given hue and will adjust the brightness level of all pixels with that hue so that the virtual bulb operation will convert those pixels to pure white. This operation should only be used on images with a white, or nearly white, background.

Use this operation if there are "shadows" of the dropped color left in the output image.

An exception will be thrown if you attempt to set this HueRadius option with the VirtualBulbOptions.Extract option set to True.

See Also

HueRadius Object


hue Property

hue Property

Description

Gets and sets hue value.

Property type

Read-write property

Syntax

Visual Basic
Public Property hue() As Byte

Remarks

The default value is 0 which is the hue value for Red.

Valid values are 0 to 255.

Note: Zero (0) indicates pure red, 85 indicates pure green, 172 indicates pure blue and 255 returns back to pure red.

See Also

HueRadius Object


radius Property

radius Property

Description

Gets and sets size of region of effect around hue value in HSV colorspace.

Property type

Read-write property

Syntax

Visual Basic
Public Property radius() As Long

Remarks

The default value is 170.

Valid values are 0 to 884.

Note: The radius used is non-linear. A Radius of approximately 172 corresponds to 2/3 of the spectrum and will emulate the same range of dropout that a color scanner would generate. Larger values will drop a greater range of color, while smaller values will drop a narrower range of color.

Colors in the inner half of the radius will drop fully to white while colors in the outer half radius will shade to black.

See Also

HueRadius Object


HueRadiusCollection Collection

HueRadiusCollection Collection
See Also Members Send Feedback

Description

This object contains a collection of HueRadius objects.

Object Model

See Also

HueRadiusCollection Members


HueRadiusCollection Collection Members

HueRadiusCollection Collection Members
See Also Overview Send Feedback

Public Methods

Public Method Add | Adds a single object to the end of the collection.
Public Method Clear | Clears the collection by releasing all objects.
Public Method GetAt | Returns a single collection value for the requested index.
Public Method Insert | Inserts a single object at the specified location in a collection.
Public Method Remove | Removes a single object from the collection.

Public Properties

Public Property count | Gets the number of items in the collection.
Public Property Item | Gets a specific member of a collection either by position or key.

See Also

HueRadiusCollection Overview


Add Method

Add Method
color
HueRadius object to add to the collection.

Description

Adds a single object to the end of the collection.

Syntax

Visual Basic
Public Sub Add( _
   ByVal color As HueRadius _
)

Parameters

color
HueRadius object to add to the collection.

See Also

HueRadiusCollection Collection


Clear Method

Clear Method

Description

Clears the collection by releasing all objects.

Syntax

Visual Basic
Public Sub Clear()

See Also

HueRadiusCollection Collection


GetAt Method

GetAt Method
index
0-based index for requested collection object.

Description

Returns a single collection value for the requested index.

Syntax

Visual Basic
Public Function GetAt( _
   ByVal index As Long _
) As HueRadius

Parameters

index
0-based index for requested collection object.

Return Type

HueRadius value from collection.

See Also

HueRadiusCollection Collection


Insert Method

Insert Method
color
Object to insert into the collection.
index
0-based index for new object in the collection.

Description

Inserts a single object at the specified location in a collection.

Syntax

Visual Basic
Public Sub Insert( _
   ByVal color As HueRadius, _
   ByVal index As Long _
)

Parameters

color
Object to insert into the collection.
index
0-based index for new object in the collection.

Remarks

All existing collection objects after the specified index are moved to one higher index.

See Also

HueRadiusCollection Collection


Remove Method

Remove Method
index
0-based index for collection object to remove.

Description

Removes a single object from the collection.

Syntax

Visual Basic
Public Sub Remove( _
   ByVal index As Long _
)

Parameters

index
0-based index for collection object to remove.

See Also

HueRadiusCollection Collection


count Property

count Property

Description

Gets the number of items in the collection.

Property type

Read-only property

Syntax

Visual Basic
Public Property count() As Long

See Also

HueRadiusCollection Collection


Item Property

Item Property
vIndex

Description

Gets a specific member of a collection either by position or key.

Property type

Read-only property

Syntax

Visual Basic
Public Property Item( _
   ByVal vIndex As Variant _
) As HueRadius

Parameters

vIndex

See Also

HueRadiusCollection Collection


ImageDetergentOptions Object

ImageDetergentOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the ImageDetergent process.

Object Model

See Also

ImageDetergentOptions Members


ImageDetergentOptions Object Members

ImageDetergentOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property colorRadiusList Gets color radius list object.

See Also

ImageDetergentOptions Overview


colorRadiusList Property

colorRadiusList Property

Description

Gets color radius list object.

Property type

Read-write property

Syntax

Visual Basic
Public Property colorRadiusList() As ColorRadiusCollection

Remarks

A collection of specific colors and radii to clean.

See Also

ImageDetergentOptions Object


ImageDetergentResults Object

ImageDetergentResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the ImageDetergent enhancement result.

See Also

ImageDetergentResults Members


ImageDetergentResults Object Members

ImageDetergentResults Object Members
See Also Overview Send Feedback

See Also

ImageDetergentResults Overview


ImageRegistrationOptions Object

ImageRegistrationOptions Object
See Also Members Send Feedback

Description

This object contains exposed parameters that control the image registration process.

See Also

ImageRegistrationOptions Members


ImageRegistrationOptions Object Members

ImageRegistrationOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property horizontalActive | Gets and sets a flag that enables registration of the left edge of the text.
Public Property horizontalAddOnly | Gets and sets a flag that indicates whether any pixels will be removed during horizontal registration, even if the desired margin is smaller than the existing margin.
Public Property horizontalCentralFocus | Gets and sets a flag that indicates whether the middle portion of the image border will be used for registration, ignoring edge noise, letterheads, and logos.
Public Property horizontalIgnoreHoles | Gets and sets a flag that indicates whether binder holes and other left-edge noise are ignored during horizontal registration.
Public Property horizontalMinimumActivity | Gets and sets a value that controls how intense the activity has to be for it to be considered real activity.
Public Property horizontalMinimumBackground | Gets and sets a value that controls how dense and consistent image data should be for it to be considered edge noise.
Public Property horizontalMinimumForeground | Gets and sets a value that controls how much activity determines what is valid data.
Public Property horizontalResultantMargin | Gets and sets a value that indicates how many pixels will remain as a left margin after processing.
Public Property horizontalSkipActive | Gets and sets a flag that indicates whether a set number of scan lines will be skipped before the toolkit starts looking for valid information for registration.
Public Property horizontalSkipDistance | Gets and sets a value that indicates how many vertical scan lines will be skipped if horizontalSkipActive is True, otherwise this value is ignored.
Public Property horizontalToLineActive | Gets and sets a flag that indicates whether the component will position the text in the image based on the position of a vertical line, or to what is determined to be the edge of the text.
Public Property horizontalToLineCheckThinLinesActive | Gets and sets a flag that indicates the vertical line to register to is very thin (1 or 2 pixels) when horizontalToLineActive is True, otherwise this value is ignored.
Public Property horizontalToLineMaximumLineGap | Gets and sets a value that indicates the maximum allowable size (in pixels) of gaps within the vertical line to register to.
Public Property horizontalToLineMaximumLineThickness | Gets and sets a value that indicates the maximum allowable width (in pixels) of the vertical line to register to.
Public Property horizontalToLineMinimumLineLength | Gets and sets a value that indicates the minimum allowable length (in pixels) of the vertical line to register to.
Public Property verticalActive | Gets and sets a flag that enables registration of the top edge of the text.
Public Property verticalAddOnly | Gets and sets a flag that indicates whether any pixels will be removed during vertical registration, even if the desired margin is smaller than the existing margin.
Public Property verticalCentralFocus | Gets and sets a flag that indicates whether the middle portion of the image border will be used for registration, ignoring edge noise, letterheads, and logos.
Public Property verticalMinimumActivity | Gets and sets a value that controls how intense the activity has to be for it to be considered real activity.
Public Property verticalMinimumBackground | Gets and sets a value that controls how dense and consistent image data should be for it to be considered edge noise.
Public Property verticalMinimumForeground | Gets and sets a value that controls how much activity determines what is valid data.
Public Property verticalResultantMargin | Gets and sets a value that indicates how many pixels will remain as a top margin after processing.
Public Property verticalSkipActive | Gets and sets a flag that indicates whether a set number of scan lines will be skipped before the toolkit starts looking for valid information for registration.
Public Property verticalSkipDistance | Gets and sets a value that indicates how many horizontal scan lines will be skipped if verticalSkipActive is True, otherwise this value is ignored.
Public Property verticalToLineActive | Gets and sets a flag that indicates whether the component will position the text in the image based on the position of a horizontal line, or to what is determined to be the edge of the text.
Public Property verticalToLineCheckThinLinesActive | Gets and sets a flag that indicates the horizontal line to register to is very thin (1 or 2 pixels) when verticalToLineActive is True, otherwise this value is ignored.
Public Property verticalToLineMaximumLineGap | Gets and sets a value that indicates the maximum allowable size (in pixels) of gaps within the horizontal line to register to.
Public Property verticalToLineMaximumLineThickness | Gets and sets a value that indicates the maximum allowable width (in pixels) of the horizontal line to register to.
Public Property verticalToLineMinimumLineLength | Gets and sets a value that indicates the minimum allowable length (in pixels) of the horizontal line to register to.

See Also

ImageRegistrationOptions Overview


horizontalActive Property

horizontalActive Property

Description

Gets and sets a flag that enables registration of the left edge of the text.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalActive() As Boolean

Return Type

A boolean which is set to True to enable registration on the left edge of the text. Otherwise, False is returned.

Remarks

The default value is True.

See Also

ImageRegistrationOptions Object


horizontalAddOnly Property

horizontalAddOnly Property

Description

Gets and sets a flag that indicates whether any pixels will be removed during horizontal registration, even if the desired margin is smaller than the existing margin.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalAddOnly() As Boolean

Return Type

A boolean which returns True to remove pixels during horizontal registration. Otherwise, False is returned.

Remarks

The default value is False.

When this property is True and the value specified in the horizontalMarginAdjustment property is less than 0, no modification to the left margin of the current image will have occurred. In this case, the value returned by the horizontalMarginAdjustment property represents the adjustment that would have been applied to the left margin if Registration were permitted to remove pixels.

See Also

ImageRegistrationOptions Object


horizontalCentralFocus Property

horizontalCentralFocus Property

Description

Gets and sets a flag that indicates whether the middle portion of the image border will be used for registration, ignoring edge noise, letterheads, and logos.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalCentralFocus() As Boolean

Return Type

A boolean value which returns True if the middle portion of the image border is used for registration. Otherwise, False is returned.

Remarks

The default value is False.

See Also

ImageRegistrationOptions Object


horizontalIgnoreHoles Property

horizontalIgnoreHoles Property

Description

Gets and sets a flag that indicates whether binder holes and other left-edge noise are ignored during horizontal registration.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalIgnoreHoles() As Boolean

Return Type

A boolean value which returns True if binder holes are ignored during horizontal registration. Otherwise, False is returned.

Remarks

The default value is False.

Note: Set this property to False, unless you have holes or similar noise to avoid. This feature only applies to horizontal registration.

See Also

ImageRegistrationOptions Object


horizontalMinimumActivity Property

horizontalMinimumActivity Property

Description

Gets and sets a value that controls how intense the activity has to be for it to be considered real activity.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalMinimumActivity() As Long

Return Type

A long value which represents the minimum level of activity.

Remarks

The default value is 3.

Valid values: Any number from 1 to 1000.

Note: Setting this value higher can improve performance when you find the component registering to edge noise.

See Also

ImageRegistrationOptions Object


horizontalMinimumBackground Property

horizontalMinimumBackground Property

Description

Gets and sets a value that controls how dense and consistent image data should be for it to be considered edge noise.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalMinimumBackground() As Long

Return Type

A long value which represents the minimum density of edge noise.

Remarks

The default value is 5.

Valid values: Any number from 2 to 1000.

Note: A very high value can cause edge noise to be treated as valid data. If you use a very low value, valid data may be considered edge noise.

See Also

ImageRegistrationOptions Object


horizontalMinimumForeground Property

horizontalMinimumForeground Property

Description

Gets and sets a value that controls how much activity determines what is valid data.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalMinimumForeground() As Long

Return Type

A long value which represents the minimum density of valid data.

Remarks

The default value is 5.

Valid Values: Any number from 1 to 1000.

Note: Individual characters are usually about 20 pixels wide, so values around 20 (on a 300 dpi image) often work well, consistently ignoring perpendicular lines. Lower values can increase the likelihood of registering to edge noise. You may need to use values as low as 1 when you are dealing with dot matrix print.

See Also

ImageRegistrationOptions Object


horizontalResultantMargin Property

horizontalResultantMargin Property

Description

Gets and sets a value that indicates how many pixels will remain as a left margin after processing.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalResultantMargin() As Long

Return Type

A long value which represents the size of the left margin after processing.

Remarks

The default value is 150.

Valid values: Any number from -{image width} to +20000.

Note: Setting this value to 0 places the text flush with left edge of the image. A negative value crops the specified number of pixels from the left edge of the text.

See Also

ImageRegistrationOptions Object


horizontalSkipActive Property

horizontalSkipActive Property

Description

Gets and sets a flag that indicates whether a set number of scan lines will be skipped before the toolkit starts looking for valid information for registration.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalSkipActive() As Boolean

Return Type

A boolean value which returns True if the scan lines are skipped before looking for valid registration information. Otherwise, False is returned.

Remarks

The default value is False.

When this property is set to True, the scan lines set in the horizontalSkipDistance property are skipped. If this property is set to false, the horizontalSkipDistance property is ignored.

Note: The skip feature is particularly valuable for dealing with unwanted data on the edge of an image. In some cases, you may want to skip over a form line or margin note. In other cases, this feature can be useful to skip over scanner artifacts that look like lines or data.

See Also

ImageRegistrationOptions Object


horizontalSkipDistance Property

horizontalSkipDistance Property

Description

Gets and sets a value that indicates how many vertical scan lines will be skipped if horizontalSkipActive is True, otherwise this value is ignored.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalSkipDistance() As Long

Return Type

A long value which represents the number of vertical scan lines to skip.

Remarks

The default value is 20.

Valid values: Any number from 0 to 20000.

See Also

ImageRegistrationOptions Object


horizontalToLineActive Property

horizontalToLineActive Property

Description

Gets and sets a flag that indicates whether the component will position the text in the image based on the position of a vertical line, or to what is determined to be the edge of the text.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalToLineActive() As Boolean

Return Type

A boolean value which returns True to position the text in the image based on the position of a vertical line. Otherwise, False is returned.

Remarks

The default value is False.

Note: This is a powerful feature for precise registration on forms, especially on forms with edge noise. The vertical line should be significantly larger than any text characters (in particular, those characters to the left of this line).

When this property is set to True, the component checks the horizontalToLineCheckThinLinesActive property for the vertical line thickness.

See Also

ImageRegistrationOptions Object


horizontalToLineCheckThinLinesActive Property

horizontalToLineCheckThinLinesActive Property

Description

Gets and sets a flag that indicates the vertical line to register to is very thin (1 or 2 pixels) when horizontalToLineActive is True, otherwise this value is ignored.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalToLineCheckThinLinesActive() As Boolean

Return Type

A boolean value which returns True if the vertical line to register is very thin. Otherwise, False is returned.

Remarks

The default value is False.

Note: This value is ignored if horizontalToLineActive is False.

See Also

ImageRegistrationOptions Object


horizontalToLineMaximumLineGap Property

horizontalToLineMaximumLineGap Property

Description

Gets and sets a value that indicates the maximum allowable size (in pixels) of gaps within the vertical line to register to.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalToLineMaximumLineGap() As Long

Return Type

A long value which represents the maximum allowable size (in pixels) of gaps within the vertical line to register to.

Remarks

The default value is 2.

Valid values: Any number from 0 to 50.

Note: With a value of 3 or less, the component simply ignores short gaps. However, setting this value over 3 tells the component to employ its Super-Line algorithms. These algorithms re-assemble broken lines into a whole line for registration purposes, and can dramatically improve the success rate when horizontalToLineActive is True.

This value is ignored if horizontalToLineActive is False.

See Also

ImageRegistrationOptions Object


horizontalToLineMaximumLineThickness Property

horizontalToLineMaximumLineThickness Property

Description

Gets and sets a value that indicates the maximum allowable width (in pixels) of the vertical line to register to.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalToLineMaximumLineThickness() As Long

Return Type

A long value which represents the maximum allowable width (in pixels) of the vertical line to register to.

Remarks

The default value is 22.

Valid values: Any number from 0 to 100.

Note: This value lets you select the maximum thickness to consider when registering to a vertical line so you can set the maximum line thickness lower than the width of the text.

This value is ignored if horizontalToLineActive is False.

See Also

ImageRegistrationOptions Object


horizontalToLineMinimumLineLength Property

horizontalToLineMinimumLineLength Property

Description

Gets and sets a value that indicates the minimum allowable length (in pixels) of the vertical line to register to.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontalToLineMinimumLineLength() As Long

Return Type

An integer which represents the minimum allowable length (in pixels) of the vertical line to register to.

Remarks

The default value is 300.

Valid values: Any number from 0 to 20000.

Note: This value should be larger than the height of the text characters. The component will examine the image from left to right, until it locates a vertical line segment larger than this value, or until it reaches one quarter the image width. It then shifts the image so that the line is the distance from the left edge of the image as specified by horizontalResultantMargin.

This value is ignored if horizontalToLineActive is False.

See Also

ImageRegistrationOptions Object


verticalActive Property

verticalActive Property

Description

Gets and sets a flag that enables registration of the top edge of the text.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalActive() As Boolean

Return Type

A boolean value which returns True if registration is enabled for the top edge of the text. Otherwise, False is returned.

Remarks

The default value is True.

See Also

ImageRegistrationOptions Object


verticalAddOnly Property

verticalAddOnly Property

Description

Gets and sets a flag that indicates whether any pixels will be removed during vertical registration, even if the desired margin is smaller than the existing margin.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalAddOnly() As Boolean

Return Type

A boolean value which returns True if pixels are removed during vertical registration. Otherwise, False is returned.

Remarks

The default value is False.

When this property is True and the value specified in the verticalMarginAdjustment property is less than 0, no modification to the top margin of the current image will have occurred. In this case, the value returned by the verticalMarginAdjustment property represents the adjustment that would have been applied to the top margin if Registration were permitted to remove pixels.

See Also

ImageRegistrationOptions Object


verticalCentralFocus Property

verticalCentralFocus Property

Description

Gets and sets a flag that indicates whether the middle portion of the image border will be used for registration, ignoring edge noise, letterheads, and logos.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalCentralFocus() As Boolean

Return Type

A boolean value which returns True if the middle portion of the image border is used for registration. Otherwise, False is returned.

Remarks

The default value is False.

See Also

ImageRegistrationOptions Object


verticalMinimumActivity Property

verticalMinimumActivity Property

Description

Gets and sets a value that controls how intense the activity has to be for it to be considered real activity.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalMinimumActivity() As Long

Return Type

A long value which represents the minimum level of activity.

Remarks

The default value is 3.

Valid values: Any number from 1 to 1000.

Note: Setting this value higher can improve performance when you find the toolkit registering to edge noise.

See Also

ImageRegistrationOptions Object


verticalMinimumBackground Property

verticalMinimumBackground Property

Description

Gets and sets a value that controls how dense and consistent image data should be for it to be considered edge noise.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalMinimumBackground() As Long

Return Type

A long value which represents the minimum density of edge noise.

Remarks

The default value is 5.

Valid values: Any number from 2 to 1000.

Note: A very high value can cause edge noise to be treated as valid data. If you use a very lower value, valid data may be considered edge noise.

See Also

ImageRegistrationOptions Object


verticalMinimumForeground Property

verticalMinimumForeground Property

Description

Gets and sets a value that controls how much activity determines what is valid data.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalMinimumForeground() As Long

Return Type

A long value which represents the minimum density of valid data.

Remarks

The default value is 5.

Valid values: Any number from 1 to 1000.

Note: Individual characters are usually about 20 pixels wide, so values around 20 (on a 300 dpi image) often work well, consistently ignoring perpendicular lines. Lower values can increase the likelihood of registering to edge noise. You may need to use values as low as 1 when you are dealing with dot matrix print.

See Also

ImageRegistrationOptions Object


verticalResultantMargin Property

verticalResultantMargin Property

Description

Gets and sets a value that indicates how many pixels will remain as a top margin after processing.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalResultantMargin() As Long

Return Type

A long value which represents the size of the top margin after processing.

Remarks

The default value is 150.

Valid values: Any number from -{image height} to +20000.

Note: Setting this value to 0 places text flush with top edge of the image. A negative value crops the specified number of pixels from the top edge of the text.

See Also

ImageRegistrationOptions Object


verticalSkipActive Property

verticalSkipActive Property

Description

Gets and sets a flag that indicates whether a set number of scan lines will be skipped before the toolkit starts looking for valid information for registration.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalSkipActive() As Boolean

Return Type

A boolean value which returns True if horizontal scan lines are skipped before looking for valid registration information. Otherwise, False is returned.

Remarks

The default value is False.

Note: The skip feature is particularly valuable for dealing with unwanted data on the edge of an image. In some cases, you may want to skip over a form line or margin note. In other cases, this feature can be useful to skip over scanner artifacts that look like lines or data.

When this property is set to True, the scan lines set in the verticalSkipDistance property are skipped. If this property is set to False, the verticalSkipDistance property is ignored.

See Also

ImageRegistrationOptions Object


verticalSkipDistance Property

verticalSkipDistance Property

Description

Gets and sets a value that indicates how many horizontal scan lines will be skipped if verticalSkipActive is True, otherwise this value is ignored.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalSkipDistance() As Long

Return Type

A long value which represents the number of horizontal scan lines to skip.

Remarks

The default value is 20.

Valid values: Any number from 0 to 20000.

See Also

ImageRegistrationOptions Object


verticalToLineActive Property

verticalToLineActive Property

Description

Gets and sets a flag that indicates whether the component will position the text in the image based on the position of a horizontal line, or to what is determined to be the edge of the text.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalToLineActive() As Boolean

Return Type

A boolean value which is True if the component positions the text in the image based on the position of a horizontal line. Otherwise, False is returned.

Remarks

The default value is False.

Note: This is a powerful feature for precise registration on forms, especially on forms with edge noise. The horizontal line should be significantly larger than any text characters (in particular, those characters above this line).

See Also

ImageRegistrationOptions Object


verticalToLineCheckThinLinesActive Property

verticalToLineCheckThinLinesActive Property

Description

Gets and sets a flag that indicates the horizontal line to register to is very thin (1 or 2 pixels) when verticalToLineActive is True, otherwise this value is ignored.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalToLineCheckThinLinesActive() As Boolean

Return Type

A boolean value which is True when the horizontal line to register is very thin. Otherwise, False is returned.

Remarks

The default value is False.

Note: This value is ignored if verticalToLineActive is False.

See Also

ImageRegistrationOptions Object


verticalToLineMaximumLineGap Property

verticalToLineMaximumLineGap Property

Description

Gets and sets a value that indicates the maximum allowable size (in pixels) of gaps within the horizontal line to register to.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalToLineMaximumLineGap() As Long

Return Type

A long value which represents the maximum allowable size (in pixels) of gaps within the horizontal line to register to.

Remarks

The default value is 2.

Valid values: Any number from 0 to 50.

Note: With a value of 3 or less, the component simply ignores short gaps. However, setting this value over 3 tells the component to employ its Super-Line algorithms. These algorithms re-assemble broken lines into a whole line for registration purposes, and can dramatically improve the success rate when verticalToLineActive is true.

This value is ignored if verticalToLineActive is False.

See Also

ImageRegistrationOptions Object


verticalToLineMaximumLineThickness Property

verticalToLineMaximumLineThickness Property

Description

Gets and sets a value that indicates the maximum allowable width (in pixels) of the horizontal line to register to.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalToLineMaximumLineThickness() As Long

Return Type

A long value which represents the maximum allowable width (in pixels) of the horizontal line to register to.

Remarks

The default value is 22.

Valid values: Any number from 0 to 100.

Note: This value lets you select the maximum thickness to consider when registering to a horizontal line so you can set the maximum line thickness lower than the width of the text.

This value is ignored if the verticalToLineActive property is set to False.

See Also

ImageRegistrationOptions Object


verticalToLineMinimumLineLength Property

verticalToLineMinimumLineLength Property

Description

Gets and sets a value that indicates the minimum allowable length (in pixels) of the horizontal line to register to.

Property type

Read-write property

Syntax

Visual Basic
Public Property verticalToLineMinimumLineLength() As Long

Return Type

A long value which represents the minimum allowable length (in pixels) of the horizontal line to register to.

Remarks

The default value is 300.

Valid values: Any number from 0 to 20000.

Note: This value should be larger than the width of the text characters. The component examines the image from left to right, until it locates a horizontal line segment larger than this value, or until it reaches one quarter the image height. It then shifts the image so that the line is the distance from the top edge of the image as specified by VerticalResultantMargin.

This value is ignored if the verticalToLineActive property is set to False.

See Also

ImageRegistrationOptions Object


ImageRegistrationResults Object

ImageRegistrationResults Object
See Also Members Send Feedback

Description

This object contains output values from the image registration process.

See Also

ImageRegistrationResults Members


ImageRegistrationResults Object Members

ImageRegistrationResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property horizontalMarginAdjustment | Gets and sets the number of pixel columns added to the left margin. A negative number denotes that pixels were removed from the left margin.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified during the registration process.
Public Property verticalMarginAdjustment | Gets and sets the number of pixel rows added to the top margin. A negative number denotes that pixels were removed from the top margin.

See Also

ImageRegistrationResults Overview


horizontalMarginAdjustment Property

horizontalMarginAdjustment Property

Description

Gets and sets the number of pixel columns added to the left margin. A negative number denotes that pixels were removed from the left margin.

Property type

Read-only property

Syntax

Visual Basic
Public Property horizontalMarginAdjustment() As Long

Return Type

A long value which represents the number of pixel columns added to the left edge margin.

Remarks

Note: A value less than 0 indicates that vertical lines were removed from the left margin making the image smaller. A value greater than 0 indicates that vertical lines were added to the left margin making the image larger.

When the horizontalAddOnly flag is True and the value specified in the property is less than 0, no modification to the left margin of the current image will have occurred. In this case, the value returned by this property represents the adjustment that would have been applied to the left margin if Registration were permitted to remove pixels.

When Registration adds pixels to the image, the added pixels are always White.

See Also

ImageRegistrationResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified during the registration process.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Return Type

A boolean value which is set to True to indicate the image was modified during registration. Otherwise, False is returned.

See Also

ImageRegistrationResults Object


verticalMarginAdjustment Property

verticalMarginAdjustment Property

Description

Gets and sets the number of pixel rows added to the top margin. A negative number denotes that pixels were removed from the top margin.

Property type

Read-only property

Syntax

Visual Basic
Public Property verticalMarginAdjustment() As Long

Return Type

A long value which represents the number of pixel rows added to the top margin.

Remarks

Note: A value less than 0 indicates that horizontal lines were removed from the top margin making the image smaller. A value greater than 0 indicates that horizontal lines were added to the top margin making the image larger.

When the verticalAddOnly flag is True and the value specified in the property is less than 0, no modification to the top margin of the current image will have occurred. In this case, the value returned by this property represents the adjustment that would have been applied to the top margin if Registration were permitted to remove pixels.

When Registration adds pixels to the image, the added pixels are always White.

See Also

ImageRegistrationResults Object


InverseTextOptions Object

InverseTextOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the inverse text removal process.

See Also

InverseTextOptions Members


InverseTextOptions Object Members

InverseTextOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property minimumAreaHeight | Gets and sets the minimum height, in pixels, of the smallest expected zone of inverse text.
Public Property minimumAreaWidth | Gets and sets the minimum width, in pixels, of the smallest expected zone of inverse text.
Public Property minimumBlackOnEdges | Gets and sets the minimum horizontal length of the shortest run of black pixels along the left or right edge of an inverse zone.

See Also

InverseTextOptions Overview


minimumAreaHeight Property

minimumAreaHeight Property

Description

Gets and sets the minimum height, in pixels, of the smallest expected zone of inverse text.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumAreaHeight() As Long

Remarks

The default value is 50.

Valid values are 1 to 20000.

See Also

InverseTextOptions Object


minimumAreaWidth Property

minimumAreaWidth Property

Description

Gets and sets the minimum width, in pixels, of the smallest expected zone of inverse text.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumAreaWidth() As Long

Remarks

The default value is 300.

Valid values are 1 to 20000.

See Also

InverseTextOptions Object


minimumBlackOnEdges Property

minimumBlackOnEdges Property

Description

Gets and sets the minimum horizontal length of the shortest run of black pixels along the left or right edge of an inverse zone.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumBlackOnEdges() As Long

Remarks

The default value is 10.

Valid values are 1 to 100.

See Also

InverseTextOptions Object


InverseTextResults Object

InverseTextResults Object
See Also Members Send Feedback

Description

This object contains output values from the inverse text removal process.

See Also

InverseTextResults Members


InverseTextResults Object Members

InverseTextResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property countOfAreasFound | Gets and sets the number of inverse text areas found and removed.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified during the inverse text removal process.

See Also

InverseTextResults Overview


countOfAreasFound Property

countOfAreasFound Property

Description

Gets and sets the number of inverse text areas found and removed.

Property type

Read-only property

Syntax

Visual Basic
Public Property countOfAreasFound() As Long

See Also

InverseTextResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified during the inverse text removal process.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

See Also

InverseTextResults Object


LineRemovalOptions Object

LineRemovalOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the line removal process.

Remarks

Line removal is the process of detecting and removing vertical and horizontal lines from an image.

See Also

LineRemovalOptions Members | RemoveLines Method


LineRemovalOptions Object Members

LineRemovalOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property maximumCharacterRepairSize | Gets and sets the maximum size for character repair after line removal.
Public Property maximumGap | Gets and sets the maximum allowed gap in a line for the line to still be considered one object.
Public Property maximumThickness | Gets and sets the maximum thickness, in pixels, a line can have to meet the removal criteria.
Public Property minimumAspectRatio | Gets and sets the ratio of the line length to the line width (i.e., length / width).
Public Property minimumLength | Gets and sets the minimum length, in pixels, a line can be to meet the removal criteria.

See Also

LineRemovalOptions Overview | RemoveLines Method


maximumCharacterRepairSize Property

maximumCharacterRepairSize Property

Description

Gets and sets the maximum size for character repair after line removal.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumCharacterRepairSize() As Long

Return Type

A long value which represents the maximum character repair size.

Remarks

The default value is 20.

Valid values are 0 to 100.

See Also

LineRemovalOptions Object


maximumGap Property

maximumGap Property

Description

Gets and sets the maximum allowed gap in a line for the line to still be considered one object.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumGap() As Long

Return Type

A long value which represents the maximum gap.

Remarks

The default value is 1.

Valid values are 0 to 20.

See Also

LineRemovalOptions Object


maximumThickness Property

maximumThickness Property

Description

Gets and sets the maximum thickness, in pixels, a line can have to meet the removal criteria.

Property type

Read-write property

Syntax

Visual Basic
Public Property maximumThickness() As Long

Return Type

A long value which represents the maximum thickness.

Remarks

The default value is 20.

Valid values are 0 to 50.

See Also

LineRemovalOptions Object


minimumAspectRatio Property

minimumAspectRatio Property

Description

Gets and sets the ratio of the line length to the line width (i.e., length / width).

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumAspectRatio() As Double

Return Type

A double value which represents the minimum aspect ratio.

Remarks

The default value is 0.

Valid values are 1.0 to 1000.0. This provides a range of 10 pixels long for every one pixel wide.

Lines with ratios below this value will not be removed.

See Also

LineRemovalOptions Object


minimumLength Property

minimumLength Property

Description

Gets and sets the minimum length, in pixels, a line can be to meet the removal criteria.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumLength() As Long

Return Type

A long value which represents the minimum length of lines to remove.

Remarks

The default value is 50.

Valid values are 0 to 20,000.

Note: Lines that have lengths greater than or equal to this value will be removed. Any line smaller than this value, will not be removed.

This parameter is very sensitive to the image resolution and should generally be thought of in inches. If the value is set too low, this operation will begin to remove parts of characters. This value should be set larger than the width of text character because of this.

See Also

LineRemovalOptions Object


LineRemovalResults Object

LineRemovalResults Object
See Also Members Send Feedback

Description

This object contains output values from the line removal process.

Remarks

Line removal is the process of detecting and removing vertical and/or horizontal lines from an image.

See Also

LineRemovalResults Members


LineRemovalResults Object Members

LineRemovalResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property countOfLinesFound | Gets and sets count of the lines meeting the given criteria that were found on the image.
Public Property imageWasModified | Gets and sets a flag that indicates whether the image was modified to remove lines.

See Also

LineRemovalResults Overview


countOfLinesFound Property

countOfLinesFound Property

Description

Gets and sets count of the lines meeting the given criteria that were found on the image.

Property type

Read-only property

Syntax

Visual Basic
Public Property countOfLinesFound() As Long

Return Type

A long value which represents the number of lines removed.

See Also

LineRemovalResults Object


imageWasModified Property

imageWasModified Property

Description

Gets and sets a flag that indicates whether the image was modified to remove lines.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Return Type

A boolean value which is True if the image was modified. Otherwise, False is returned.

Remarks

The default value is True.

Note: When the countOfLinesFound value is 0, this property will return False.

See Also

LineRemovalResults Object


MirrorOptions Object

MirrorOptions Object
See Also Members Send Feedback

Description

Defines a place holder class for the Mirror image enhancement.

Remarks

This object can be added to an Enhancements list to be processed along with other enhancements on an image.

See Also

MirrorOptions Members


MirrorOptions Object Members

MirrorOptions Object Members
See Also Overview Send Feedback

See Also

MirrorOptions Overview


MirrorResults Object

MirrorResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Mirror enhancement result.

Remarks

This class contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

MirrorResults Members


MirrorResults Object Members

MirrorResults Object Members
See Also Overview Send Feedback

See Also

MirrorResults Overview


NegateOptions Object

NegateOptions Object
See Also Members Send Feedback

Description

Defines a place holder class for the Negate image enhancement.

Remarks

This object can be added to an Enhancements list to be processed along with other enhancements on an image.

See Also

NegateOptions Members


NegateOptions Object Members

NegateOptions Object Members
See Also Overview Send Feedback

See Also

NegateOptions Overview


NegateResults Object

NegateResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Negate enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

NegateResults Members


NegateResults Object Members

NegateResults Object Members
See Also Overview Send Feedback

See Also

NegateResults Overview


NegativeCorrectionOptions Object

NegativeCorrectionOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the negative correction process.

See Also

NegativeCorrectionOptions Members | CorrectNegativePage Method


NegativeCorrectionOptions Object Members

NegativeCorrectionOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property applyCorrection | Gets and sets a flag to indicate whether negative images should be automatically corrected.
Public Property minimumConfidence | Gets and sets the minimum detection confidence required before correction will proceed.
Public Property quality | Gets and sets a value that indicates the amount of effort to expend analyzing the image to determine if it is a negative.

See Also

NegativeCorrectionOptions Overview | CorrectNegativePage Method


applyCorrection Property

applyCorrection Property

Description

Gets and sets a flag to indicate whether negative images should be automatically corrected.

Property type

Read-write property

Syntax

Visual Basic
Public Property applyCorrection() As Boolean

Remarks

The default value is True.

See Also

NegativeCorrectionOptions Object


minimumConfidence Property

minimumConfidence Property

Description

Gets and sets the minimum detection confidence required before correction will proceed.

Property type

Read-write property

Syntax

Visual Basic
Public Property minimumConfidence() As Long

Remarks

The default value is 50.

Valid values are 0 to 100.

See Also

NegativeCorrectionOptions Object


quality Property

quality Property

Description

Gets and sets a value that indicates the amount of effort to expend analyzing the image to determine if it is a negative.

Property type

Read-write property

Syntax

Visual Basic
Public Property quality() As Long

Remarks

The default value is 80.

Valid values are 1 to 100.

See Also

NegativeCorrectionOptions Object


NegativeCorrectionResults Object

NegativeCorrectionResults Object
See Also Members Send Feedback

Description

This object contains output values from the negative correction process.

See Also

NegativeCorrectionResults Members


NegativeCorrectionResults Object Members

NegativeCorrectionResults Object Members
See Also Overview Send Feedback

Public Properties

Public Property confidence | Gets and sets the confidence of the blank page detection process.
Public Property imageIsNormal | Gets and sets a flag that indicates whether the image was determined to be a negative or not.
Public Property imageWasModified | A flag that indicates whether the image was corrected if a negative was detected.

See Also

NegativeCorrectionResults Overview


confidence Property

confidence Property

Description

Gets and sets the confidence of the blank page detection process.

Property type

Read-only property

Syntax

Visual Basic
Public Property confidence() As Long

Remarks

Valid values are between 0 and 100.

Note: Higher values indicate a higher confidence that the negative was or was not accurately detected.

See Also

NegativeCorrectionResults Object


imageIsNormal Property

imageIsNormal Property

Description

Gets and sets a flag that indicates whether the image was determined to be a negative or not.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageIsNormal() As Boolean

See Also

NegativeCorrectionResults Object


imageWasModified Property

imageWasModified Property

Description

A flag that indicates whether the image was corrected if a negative was detected.

Property type

Read-only property

Syntax

Visual Basic
Public Property imageWasModified() As Boolean

Remarks

Gets and sets a flag that indicates whether the image was corrected if a negative was detected.

See Also

NegativeCorrectionResults Object


RescaleOptions Object

RescaleOptions Object
See Also Members Send Feedback

Description

Defines the Rescale options used with rescale image enhancement.

Remarks

This object can be added to an Enhancements list to be processed along with other enhancements on an image.

See Also

RescaleOptions Members


RescaleOptions Object Members

RescaleOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property horizontal | The horizontal magnification to apply to the image.
Public Property vertical | The vertical magnification to apply to the image.

See Also

RescaleOptions Overview


horizontal Property

horizontal Property

Description

The horizontal magnification to apply to the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property horizontal() As Double

Remarks

The default value is 1.0.

Valid values are 0.0001 to 10000.

See Also

RescaleOptions Object


vertical Property

vertical Property

Description

The vertical magnification to apply to the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property vertical() As Double

Remarks

The default value is 1.0.

Valid values are 0.0001 to 10000.

See Also

RescaleOptions Object


RescaleResults Object

RescaleResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Rescale enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

RescaleResults Members


RescaleResults Object Members

RescaleResults Object Members
See Also Overview Send Feedback

See Also

RescaleResults Overview


Resolution Object

Resolution Object
See Also Members Send Feedback

Description

The class to get or set image resolution units.

See Also

Resolution Members | ImageResolution Property


Resolution Object Members

Resolution Object Members
See Also Overview Send Feedback

Public Properties

Public Property HorizontalResolution | Gets or sets the horizontal and vertical resolution of the image.
Public Property Units | Gets or sets the unit of measure for the horizontal and vertical resolutions.
Public Property VerticalResolution | Gets and sets the vertical resolution of the current image.

See Also

Resolution Overview | ImageResolution Property


HorizontalResolution Property

HorizontalResolution Property

Description

Gets or sets the horizontal and vertical resolution of the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property HorizontalResolution() As Single

See Also

Resolution Object


Units Property

Units Property

Description

Gets or sets the unit of measure for the horizontal and vertical resolutions.

Property type

Read-write property

Syntax

Visual Basic
Public Property Units() As SF_ResolutionUnits

See Also

Resolution Object


VerticalResolution Property

VerticalResolution Property

Description

Gets and sets the vertical resolution of the current image.

Property type

Read-write property

Syntax

Visual Basic
Public Property VerticalResolution() As Single

See Also

Resolution Object


RotateOptions Object

RotateOptions Object
See Also Members Send Feedback

Description

Defines the Rotate options used with rotate image enhancement.

Remarks

This object can be added to an Enhancements list to be processed along with other enhancements on an image.

See Also

RotateOptions Members


RotateOptions Object Members

RotateOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property padColor | Gets and sets the color to use to pad the image.
Public Property rotationAngle | Gets and sets the angle to rotate the image (measured in degrees).

See Also

RotateOptions Overview


padColor Property

padColor Property

Description

Gets and sets the color to use to pad the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property padColor() As OLE_COLOR

Remarks

The default value is White.

If the rotatationAngle property is a multiple of 90 degrees, no padding will be needed.

See Also

RotateOptions Object


rotationAngle Property

rotationAngle Property

Description

Gets and sets the angle to rotate the image (measured in degrees).

Property type

Read-write property

Syntax

Visual Basic
Public Property rotationAngle() As Double

Remarks

The default value is 0.0.

Valid values are -360.0 to 360.0.

See Also

RotateOptions Object


RotateResults Object

RotateResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the Rotate enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

RotateResults Members


RotateResults Object Members

RotateResults Object Members
See Also Overview Send Feedback

See Also

RotateResults Overview


ScanFix Object

ScanFix Object
See Also Members Send Feedback

Description

The main component object class for ScanFix.

Object Model

Remarks

The ScanFix component will return DIBs, bitmaps, and images.

The ScanFix component contains the following operations within this class: Deskew, Despeckle, Negate, Flip, Rotate, Mirror, Remove Lines, Dilate, Erode, Fill Line, Smooth Zoom, and GetRectangle.

See Also

ScanFix Members


ScanFix Object Members

ScanFix Object Members
See Also Overview Send Feedback

Public Methods

Public Method AboutBox | This brings up the About Box showing general information about this component.
Public Method AdjustBrightnessContrast | AdjustBrightnessContrast provides the ability to analyze and/or automatically increase the contrast of an image.
Public Method AdjustBrightnessContrastUsingDefaults | AdjustBrightnessContrast provides the ability to analyze and/or automatically increase the contrast of an image.
Public Method ApplyFilterAverage | This function performs a 3x3 Average filter smoothing operation on the image, placing the output in the center of the window.
Public Method ApplyFilterAverageUsingDefaults | This function performs a 3x3 Average filter smoothing operation on the image, placing the output in the center of the window.
Public Method ApplyFilterClose | This function performs a 3x3 Close filter operation on the image, closing light colored pixels.
Public Method ApplyFilterCloseUsingDefaults | This function performs a 3x3 Close filter operation on the image, closing light colored pixels.
Public Method ApplyFilterCustom | This function performs a custom convolution filter operation on image.
Public Method ApplyFilterGaussian | This function performs a Gaussian smoothing filter operation of the specified size on the image, placing the output in the specified center location.
Public Method ApplyFilterGaussianUsingDefaults | This function performs a 3x3 Gaussian smoothing filter operation on the image.
Public Method ApplyFilterLaplacian | This function performs a 3x3 Laplacian edge detection filter operation on the image.
Public Method ApplyFilterMedian | This function performs a 3x3 Median smoothing filter operation on the image.
Public Method ApplyFilterMedianUsingDefaults | This function performs a 3x3 Median smoothing filter operation on the image.
Public Method ApplyFilterOpen | This function performs a 3x3 Open filter operation on the image, opening light colored pixels.
Public Method ApplyFilterOpenUsingDefaults | This function performs a 3x3 Open filter operation on the image, opening light colored pixels.
Public Method ApplyFilterPrewitt | This function performs a 3x3 Prewitt horizontal edge detection filter operation on the image.
Public Method ApplyFilterPrewittUsingDefaults | This function performs a 3x3 Prewitt horizontal edge detection filter operation on the image.
Public Method ApplyFilterSobel | This function performs a 3x3 Sobel horizontal edge detection filter operation on the image.
Public Method ApplyFilterSobelUsingDefaults | This function performs a 3x3 Sobel horizontal edge detection filter operation on the image.
Public Method ApplyFilterUnsharp | This function performs an Unsharp mask sharpening filter operation on the image.
Public Method ApplyFilterUnsharpUsingDefaults | This function performs an Unsharp mask sharpening filter operation on the image.
Public Method AutoBinarize | This function operates on 1-bit, 8-bit and 24-bit input DIB’s creating an enhanced 1-bit output DIB of the same dimensions using an automatic, intelligent algorithm.
Public Method AutoImageDetergent | AutoImageDetergent removes noise from a color image by converting colors near each selected color to the selected color. This function automatically selects the colors to clean.
Public Method AutoImageDetergentUsingDefaults | AutoImageDetergent removes noise from a color image by converting colors near each selected color to the selected color. This function automatically selects the colors to clean.
Public Method Binarize | This function operates on 1-bit, 8-bit and 24-bit input DIB’s creating an enhanced 1-bit output DIB of the same dimensions, using the settings provided by the caller.
Public Method ColorDrop | Drop or extract specified colors in the image.
Public Method CorrectInverseText | Detects and corrects (reverses) inverse (white on black) text in a bitonal image.
Public Method CorrectInverseTextUsingDefaults | Detects and removes (reverses) inverse (white on black) text in a bitonal image.
Public Method CorrectNegativePage | Determines if the image is black on white (normal) or white on black (negative), and optionally negate the image if it is, in fact, a negative. Use this function if the default control parameters are adequate.
Public Method CorrectNegativePageUsingDefaults | Determines if the image is black on white (normal) or white on black (negative), and optionally negates the image if it is, in fact, a negative.
Public Method Deskew | Detects the skew angle of the current image and rotates the image to remove that skew.
Public Method DeskewUsingDefaults | Detects the skew angle of the current image and rotates the image to remove that skew.
Public Method Despeckle | Detects and removes specks from the current image.
Public Method DespeckleUsingDefaults | Detects and removes specks from the current image.
Public Method DetectBlankPage | Analyzes an image to determine if the amount of data there is low enough for the page to be considered blank.
Public Method DetectBlankPageUsingDefaults | Examines an image and determines if the amount of data there is low enough for the page to be considered blank.
Public Method DetectBlankRectangle | Examines a rectangle on an image and determines if the amount of data there is low enough for the page to be considered blank.
Public Method DetectColor | Examines an image looking for significant amounts of color data.
Public Method DetectColorUsingDefaults | Examines an image looking for significant amounts of color data, and optionally reports the location of the color data.
Public Method Dilate | Expands dark color pixels in the image by one in each direction.
Public Method DilateUsingDefaults | Expands dark color pixels in the image by one in each direction.
Public Method Erode | Removes dark color pixels in the image by one in each direction.
Public Method ErodeUsingDefaults | Remove the black pixels in the image by one in each direction.
Public Method ExecuteEnhancements | Execute the input enhancements on the current image.
Public Method Flip | Flip the image (swap the top and bottom).
Public Method FromHbitmap | This function sets the current image to a copy of the given HBITMAP.
Public Method FromHdib | Sets the current image to the given HDIB.
Public Method FromHdib2 | Sets the current image to the given HDIB.
Public Method FromPicture | This function sets the current image to a copy of the given picture object.
Public Method GetRectangle | Replaces the current image with a subset of the original image.
Public Method ImageDetergent | ImageDetergent removes noise from a color image by converting colors near each selected color to the selected color. The user must specify the selected colors.
Public Method Mirror | Mirrors the image (swap the left and right sides).
Public Method Negate | Inverts all colors in the image.
Public Method RegisterImage | This method automatically positions text horizontally and vertically in the current image, providing a consistent left and top margin for documents.
Public Method RegisterImageUsingDefaults | This function automatically positions text horizontally and vertically in the current image, providing a consistent left and top margin for documents.
Public Method RemoveBlobs | Locates and removes large black objects in bitonal images.
Public Method RemoveBlobsUsingDefaults | Locates and removes large black objects in bitonal images.
Public Method RemoveBorder | Method removes rows of pixels at the edges of an image.
Public Method RemoveBorderUsingDefaults | This feature will locate border pixels and will replace them with the specified pad color and/or remove the pixels from the image.
Public Method RemoveCombs | Detects and removes combs from the current image.
Public Method RemoveCombsUsingDefaults | Detects and removes combs from the current image.
Public Method RemoveDotShading | Removes dot shading areas from a bitonal image, including actual black-on-white shading.
Public Method RemoveDotShadingUsingDefaults | Removes dot shading areas from a bitonal image, including actual black-on-white shading.
Public Method RemoveLines | Detects and removes lines from the current image.
Public Method RemoveLinesUsingDefaults | Detects and removes lines from the current image.
Public Method Rescale | This feature allows the image to be rescaled with the vertical and horizontal axis rescaled independently from each other.
Public Method Rotate | Rotate the image by the given angle.
Public Method Shear | Shear the image by the given amount.
Public Method SmoothObjects | Smoothes edges in the image by the given amount in a bitonal image.
Public Method SmoothObjectsUsingDefaults | Smoothes edges in the image by the given amount in a bitonal image.
Public Method SmoothZoom | Replace the current image with a new image whose width and height have been doubled and whose pixels have been smoothed.
Public Method ToHdib | Returns the DIB containing the component's current image.
Public Method ToHdib2 | Returns the DIB containing the component's current image.
Public Method ToPicture | Returns the current image as an object.
Public Method UnlockRuntime | Unlock the ScanFix6 control for use in runtime environments.
Public Method UnlockWeb | Unlock the ScanFix6 control for use in web servers.
Public Method VirtualBulb | This function emulates a dropout scanner, and cleans an image by converting the selected hues to white, nearby colors to shades of gray and all other saturated colors to black.

Public Properties

Public Property Debug | Gets and sets a flag to indicate if debug information is sent to a debug file.
Public Property DebugLogFile | Gets and sets the debug log file name.
Public Property ErrorCode | Gets the error code after an error has occurred.
Public Property ErrorDescription | Gets the error description string after an error has occurred.
Public Property ErrorLevel | Gets and sets level for items to be written to the debug log file.
Public Property ErrorNumber | Gets the error number after an error has occurred.
Public Property EvaluationMode | Gets and sets the evaluation mode of this component.
Public Property HorizontalResolution | Gets and sets the horizontal resolution of the current image.
Public Property ImageHeight | Gets the height of the current image in pixels.
Public Property ImageResolution | Gets the resolution object for ScanFix.
Public Property ImageWidth | Gets the width of the current image in pixels.
Public Property LicenseEdition | Gets and sets the license edition of this component.
Public Property RaiseExceptions | Indicates whether the control will throw exceptions.
Public Property ResolutionUnits | Gets and sets the unit of measure for the vertical and horizontal resolutions.
Public Property VerticalResolution | Gets and sets the vertical resolution of the current image.

See Also

ScanFix Overview


AboutBox Method

AboutBox Method

Description

This brings up the About Box showing general information about this component.

Syntax

Visual Basic
Public Sub AboutBox()

See Also

ScanFix Object


AdjustBrightnessContrast Method

AdjustBrightnessContrast Method
options

Description

AdjustBrightnessContrast provides the ability to analyze and/or automatically increase the contrast of an image.

Syntax

Visual Basic
Public Function AdjustBrightnessContrast( _
   ByVal options As BrightnessContrastOptions _
) As BrightnessContrastResults

Parameters

options

See Also

ScanFix Object


AdjustBrightnessContrastUsingDefaults Method

AdjustBrightnessContrastUsingDefaults Method

Description

AdjustBrightnessContrast provides the ability to analyze and/or automatically increase the contrast of an image.

Syntax

Visual Basic
Public Function AdjustBrightnessContrastUsingDefaults() As BrightnessContrastResults

See Also

ScanFix Object


ApplyFilterAverage Method

ApplyFilterAverage Method
options

Description

This function performs a 3x3 Average filter smoothing operation on the image, placing the output in the center of the window.

Syntax

Visual Basic
Public Sub ApplyFilterAverage( _
   ByVal options As FilterAverageOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterAverageUsingDefaults Method

ApplyFilterAverageUsingDefaults Method

Description

This function performs a 3x3 Average filter smoothing operation on the image, placing the output in the center of the window.

Syntax

Visual Basic
Public Sub ApplyFilterAverageUsingDefaults()

See Also

ScanFix Object


ApplyFilterClose Method

ApplyFilterClose Method
options

Description

This function performs a 3x3 Close filter operation on the image, closing light colored pixels.

Syntax

Visual Basic
Public Sub ApplyFilterClose( _
   ByVal options As FilterCloseOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterCloseUsingDefaults Method

ApplyFilterCloseUsingDefaults Method

Description

This function performs a 3x3 Close filter operation on the image, closing light colored pixels.

Syntax

Visual Basic
Public Sub ApplyFilterCloseUsingDefaults()

See Also

ScanFix Object


ApplyFilterCustom Method

ApplyFilterCustom Method
options

Description

This function performs a custom convolution filter operation on image.

Syntax

Visual Basic
Public Sub ApplyFilterCustom( _
   ByVal options As FilterCustomOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterGaussian Method

ApplyFilterGaussian Method
options

Description

This function performs a Gaussian smoothing filter operation of the specified size on the image, placing the output in the specified center location.

Syntax

Visual Basic
Public Sub ApplyFilterGaussian( _
   ByVal options As FilterGaussianOptions _
)

Parameters

options

Remarks

Note: Use this function if you wish to modify the parameters controlling the enhancement.

This filter has internal optimization for faster operation when the filter window is set to 3x3 or 5x5 size and output at the center of the window.

See Also

ScanFix Object


ApplyFilterGaussianUsingDefaults Method

ApplyFilterGaussianUsingDefaults Method

Description

This function performs a 3x3 Gaussian smoothing filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterGaussianUsingDefaults()

See Also

ScanFix Object


ApplyFilterLaplacian Method

ApplyFilterLaplacian Method

Description

This function performs a 3x3 Laplacian edge detection filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterLaplacian()

See Also

ScanFix Object


ApplyFilterMedian Method

ApplyFilterMedian Method
options

Description

This function performs a 3x3 Median smoothing filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterMedian( _
   ByVal options As FilterMedianOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterMedianUsingDefaults Method

ApplyFilterMedianUsingDefaults Method

Description

This function performs a 3x3 Median smoothing filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterMedianUsingDefaults()

See Also

ScanFix Object


ApplyFilterOpen Method

ApplyFilterOpen Method
options

Description

This function performs a 3x3 Open filter operation on the image, opening light colored pixels.

Syntax

Visual Basic
Public Sub ApplyFilterOpen( _
   ByVal options As FilterOpenOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterOpenUsingDefaults Method

ApplyFilterOpenUsingDefaults Method

Description

This function performs a 3x3 Open filter operation on the image, opening light colored pixels.

Syntax

Visual Basic
Public Sub ApplyFilterOpenUsingDefaults()

See Also

ScanFix Object


ApplyFilterPrewitt Method

ApplyFilterPrewitt Method
options

Description

This function performs a 3x3 Prewitt horizontal edge detection filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterPrewitt( _
   ByVal options As FilterPrewittOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterPrewittUsingDefaults Method

ApplyFilterPrewittUsingDefaults Method

Description

This function performs a 3x3 Prewitt horizontal edge detection filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterPrewittUsingDefaults()

See Also

ScanFix Object


ApplyFilterSobel Method

ApplyFilterSobel Method
options

Description

This function performs a 3x3 Sobel horizontal edge detection filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterSobel( _
   ByVal options As FilterSobelOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterSobelUsingDefaults Method

ApplyFilterSobelUsingDefaults Method

Description

This function performs a 3x3 Sobel horizontal edge detection filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterSobelUsingDefaults()

See Also

ScanFix Object


ApplyFilterUnsharp Method

ApplyFilterUnsharp Method
options

Description

This function performs an Unsharp mask sharpening filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterUnsharp( _
   ByVal options As FilterUnsharpOptions _
)

Parameters

options

See Also

ScanFix Object


ApplyFilterUnsharpUsingDefaults Method

ApplyFilterUnsharpUsingDefaults Method

Description

This function performs an Unsharp mask sharpening filter operation on the image.

Syntax

Visual Basic
Public Sub ApplyFilterUnsharpUsingDefaults()

See Also

ScanFix Object


AutoBinarize Method

AutoBinarize Method

Description

This function operates on 1-bit, 8-bit and 24-bit input DIB’s creating an enhanced 1-bit output DIB of the same dimensions using an automatic, intelligent algorithm.

Syntax

Visual Basic
Public Sub AutoBinarize()

Remarks

AutoBinarize logic in ScanFix Xpress v6 is significantly improved from the logic in ScanFix Xpress v5. See Binarize for details about how to replicate the ScanFix v5 auto-binarize settings.

See Also

ScanFix Object


AutoImageDetergent Method

AutoImageDetergent Method
options

Description

AutoImageDetergent removes noise from a color image by converting colors near each selected color to the selected color. This function automatically selects the colors to clean.

Syntax

Visual Basic
Public Sub AutoImageDetergent( _
   ByVal options As AutoImageDetergentOptions _
)

Parameters

options

See Also

ScanFix Object


AutoImageDetergentUsingDefaults Method

AutoImageDetergentUsingDefaults Method

Description

AutoImageDetergent removes noise from a color image by converting colors near each selected color to the selected color. This function automatically selects the colors to clean.

Syntax

Visual Basic
Public Sub AutoImageDetergentUsingDefaults()

See Also

ScanFix Object


Binarize Method

Binarize Method
options
An object containing parameters controlling the process.

Description

This function operates on 1-bit, 8-bit and 24-bit input DIB’s creating an enhanced 1-bit output DIB of the same dimensions, using the settings provided by the caller.

Syntax

Visual Basic
Public Sub Binarize( _
   ByVal options As BinarizeOptions _
)

Parameters

options
An object containing parameters controlling the process.

Remarks

If you want to replicate ScanFix Xpress v5 AutoBinarize for bitonal images, use the following settings:

lowThreshold = 0

highThreshold = 0

lpreceFactor = 0

preBlurType = SmartBlur

If you want to replicate ScanFix Xpress v5 AutoBinarize for gray or color images, use the following settings:

lowThreshold = 170

highThreshold = 190

lceFactor = 0

preBlurType = NoBlur

See Also

ScanFix Object


ColorDrop Method

ColorDrop Method
options

Description

Drop or extract specified colors in the image.

Syntax

Visual Basic
Public Sub ColorDrop( _
   ByVal options As ColorDropOptions _
)

Parameters

options

See Also

ScanFix Object


CorrectInverseText Method

CorrectInverseText Method
options
An object containing parameters controlling the process.

Description

Detects and corrects (reverses) inverse (white on black) text in a bitonal image.

Syntax

Visual Basic
Public Function CorrectInverseText( _
   ByVal options As InverseTextOptions _
) As InverseTextResults

Parameters

options
An object containing parameters controlling the process.

See Also

ScanFix Object


CorrectInverseTextUsingDefaults Method

CorrectInverseTextUsingDefaults Method

Description

Detects and removes (reverses) inverse (white on black) text in a bitonal image.

Syntax

Visual Basic
Public Function CorrectInverseTextUsingDefaults() As InverseTextResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


CorrectNegativePage Method

CorrectNegativePage Method
options
An object containing parameters controlling the process.

Description

Determines if the image is black on white (normal) or white on black (negative), and optionally negate the image if it is, in fact, a negative. Use this function if the default control parameters are adequate.

Syntax

Visual Basic
Public Function CorrectNegativePage( _
   ByVal options As NegativeCorrectionOptions _
) As NegativeCorrectionResults

Parameters

options
An object containing parameters controlling the process.

See Also

ScanFix Object


CorrectNegativePageUsingDefaults Method

CorrectNegativePageUsingDefaults Method

Description

Determines if the image is black on white (normal) or white on black (negative), and optionally negates the image if it is, in fact, a negative.

Syntax

Visual Basic
Public Function CorrectNegativePageUsingDefaults() As NegativeCorrectionResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


Deskew Method

Deskew Method
options
An object containing parameters controlling the process.

Description

Detects the skew angle of the current image and rotates the image to remove that skew.

Syntax

Visual Basic
Public Function Deskew( _
   ByVal options As DeskewOptions _
) As DeskewResults

Parameters

options
An object containing parameters controlling the process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


DeskewUsingDefaults Method

DeskewUsingDefaults Method

Description

Detects the skew angle of the current image and rotates the image to remove that skew.

Syntax

Visual Basic
Public Function DeskewUsingDefaults() As DeskewResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


Despeckle Method

Despeckle Method
options
An object containing parameters controlling the process.

Description

Detects and removes specks from the current image.

Syntax

Visual Basic
Public Function Despeckle( _
   ByVal options As DespeckleOptions _
) As DespeckleResults

Parameters

options
An object containing parameters controlling the process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


DespeckleUsingDefaults Method

DespeckleUsingDefaults Method

Description

Detects and removes specks from the current image.

Syntax

Visual Basic
Public Function DespeckleUsingDefaults() As DespeckleResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


DetectBlankPage Method

DetectBlankPage Method
options
An object containing parameters controlling the process.

Description

Analyzes an image to determine if the amount of data there is low enough for the page to be considered blank.

Syntax

Visual Basic
Public Function DetectBlankPage( _
   ByVal options As BlankPageDetectOptions _
) As BlankPageDetectResults

Parameters

options
An object containing parameters controlling the process.

Return Type

An object containing information produced by the enhancement process.

Remarks

Note: Use this function if the default control parameters are adequate.

Important: This method is designed to work with document images only. Using this with photograph images may yield inaccurate or erroneous results.

See Also

ScanFix Object


DetectBlankPageUsingDefaults Method

DetectBlankPageUsingDefaults Method

Description

Examines an image and determines if the amount of data there is low enough for the page to be considered blank.

Syntax

Visual Basic
Public Function DetectBlankPageUsingDefaults() As BlankPageDetectResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


DetectBlankRectangle Method

DetectBlankRectangle Method
options
An object containing parameters controlling the process.

Description

Examines a rectangle on an image and determines if the amount of data there is low enough for the page to be considered blank.

Syntax

Visual Basic
Public Function DetectBlankRectangle( _
   ByVal options As BlankRectangleDetectOptions _
) As BlankRectangleDetectResults

Parameters

options
An object containing parameters controlling the process.

Remarks

Important: This method is designed to work with document images only. Using this with photograph images may yield inaccurate or erroneous results.

See Also

ScanFix Object


DetectColor Method

DetectColor Method
options

Description

Examines an image looking for significant amounts of color data.

Syntax

Visual Basic
Public Function DetectColor( _
   ByVal options As DetectColorOptions _
) As DetectColorResults

Parameters

options

Return Type

An object containing information produced by the enhancement process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


DetectColorUsingDefaults Method

DetectColorUsingDefaults Method

Description

Examines an image looking for significant amounts of color data, and optionally reports the location of the color data.

Syntax

Visual Basic
Public Function DetectColorUsingDefaults() As DetectColorResults

See Also

ScanFix Object


Dilate Method

Dilate Method
options
An object containing parameters controlling the process.

Description

Expands dark color pixels in the image by one in each direction.

Syntax

Visual Basic
Public Sub Dilate( _
   ByVal options As DilateOptions _
)

Parameters

options
An object containing parameters controlling the process.

See Also

ScanFix Object


DilateUsingDefaults Method

DilateUsingDefaults Method

Description

Expands dark color pixels in the image by one in each direction.

Syntax

Visual Basic
Public Sub DilateUsingDefaults()

See Also

ScanFix Object


Erode Method

Erode Method
options
An object containing parameters controlling the process.

Description

Removes dark color pixels in the image by one in each direction.

Syntax

Visual Basic
Public Sub Erode( _
   ByVal options As ErodeOptions _
)

Parameters

options
An object containing parameters controlling the process.

See Also

ScanFix Object


ErodeUsingDefaults Method

ErodeUsingDefaults Method

Description

Remove the black pixels in the image by one in each direction.

Syntax

Visual Basic
Public Sub ErodeUsingDefaults()

See Also

ScanFix Object


ExecuteEnhancements Method

ExecuteEnhancements Method
EnhancementList
The enhancements to be performed on the current image.

Description

Execute the input enhancements on the current image.

Syntax

Visual Basic
Public Sub ExecuteEnhancements( _
   ByVal EnhancementList As Enhancements _
)

Parameters

EnhancementList
The enhancements to be performed on the current image.

Remarks

This method will apply the ScanFix enhancements to the current image in the order which they appear in the enhancement list.

Note: If an error is encountered, execution will stop at the enhancement option which causes the error and an exception will be thrown. No result will be added for an enhancement option that causes an error.

See Also

ScanFix Object


Flip Method

Flip Method

Description

Flip the image (swap the top and bottom).

Syntax

Visual Basic
Public Sub Flip()

See Also

ScanFix Object


FromHbitmap Method

FromHbitmap Method
hbitmap
The handle to the bitmap to copy into this component.

Description

This function sets the current image to a copy of the given HBITMAP.

Syntax

Visual Basic
Public Sub FromHbitmap( _
   ByVal hbitmap As Integer _
)

Parameters

hbitmap
The handle to the bitmap to copy into this component.

See Also

ScanFix Object


FromHdib Method

FromHdib Method
hdib
The handle to the DIB to transfer into this component.

Description

Sets the current image to the given HDIB.

Syntax

Visual Basic
Public Sub FromHdib( _
   ByVal hdib As Integer _
)

Parameters

hdib
The handle to the DIB to transfer into this component.

Remarks

Note that this component will take ownership of the DIB, so the previous owner must either make a copy or relinquish ownership of the DIB.

See Also

ScanFix Object


FromHdib2 Method

FromHdib2 Method
hdib
The handle to the DIB to transfer into this component.
method

Description

Sets the current image to the given HDIB.

Syntax

Visual Basic
Public Sub FromHdib2( _
   ByVal hdib As Integer, _
   ByVal method As SF_FromHdibMethod _
)

Parameters

hdib
The handle to the DIB to transfer into this component.
method
Value | Description
SF_FromHdibMethod_CreateCopy | The ScanFix object creates a copy of the DIB passed via hdib parameter. Ownership of the DIB remains with the caller.
SF_FromHdibMethod_TransferInternalHdib | The ScanFix object takes ownership of the DIB passed via the hdib parameter.

See Also

ScanFix Object


FromPicture Method

FromPicture Method
picture
The image (picture) object to copy into this component.

Description

This function sets the current image to a copy of the given picture object.

Syntax

Visual Basic
Public Sub FromPicture( _
   ByVal picture As Picture _
)

Parameters

picture
The image (picture) object to copy into this component.

See Also

ScanFix Object


GetRectangle Method

GetRectangle Method
x
Integer for horizontal coordinate of area to extract from the original image.
y
Integer for vertical coordinate of area to extract from the original image.
width
Integer for width of area to extract from the original image.
height
Integer for height of area to extract from the original image.
padColor
The color used for new pixels if necessary.
allowPadding
Flag indicating whether padding or an error occurs if the 'area' is outside of the image bounds. Default is False.

Description

Replaces the current image with a subset of the original image.

Syntax

Visual Basic
Public Sub GetRectangle( _
   ByVal x As Long, _
   ByVal y As Long, _
   ByVal width As Long, _
   ByVal height As Long, _
   Optional ByVal padColor As OLE_COLOR = 16777215, _
   Optional ByVal allowPadding As Boolean = False _
)

Parameters

x
Integer for horizontal coordinate of area to extract from the original image.
y
Integer for vertical coordinate of area to extract from the original image.
width
Integer for width of area to extract from the original image.
height
Integer for height of area to extract from the original image.
padColor
The color used for new pixels if necessary.
allowPadding
Flag indicating whether padding or an error occurs if the 'area' is outside of the image bounds. Default is False.

Remarks

If the specified area extends beyond the boundaries of the original image, either pixels of the padColor (default is white) are added or an error occurs; depending upon the value of the 'allowPadding' parameter.

See Also

ScanFix Object


ImageDetergent Method

ImageDetergent Method
options

Description

ImageDetergent removes noise from a color image by converting colors near each selected color to the selected color. The user must specify the selected colors.

Syntax

Visual Basic
Public Sub ImageDetergent( _
   ByVal options As ImageDetergentOptions _
)

Parameters

options

See Also

ScanFix Object


Mirror Method

Mirror Method

Description

Mirrors the image (swap the left and right sides).

Syntax

Visual Basic
Public Sub Mirror()

See Also

ScanFix Object


Negate Method

Negate Method

Description

Inverts all colors in the image.

Syntax

Visual Basic
Public Sub Negate()

Remarks

This operation turns the image into a photo-negative of itself. In color images, the invert will be performed in the RGB colorspace.

Note: Use this function if you wish to modify the parameters controlling the enhancement.

See Also

ScanFix Object


RegisterImage Method

RegisterImage Method
options
The options from the ImageRegistrationOptions object.

Description

This method automatically positions text horizontally and vertically in the current image, providing a consistent left and top margin for documents.

Syntax

Visual Basic
Public Function RegisterImage( _
   ByVal options As ImageRegistrationOptions _
) As ImageRegistrationResults

Parameters

options
The options from the ImageRegistrationOptions object.

Remarks

Use this method if you wish to modify the parameters controlling the enhancement by passing in alternate options.

See Also

ScanFix Object


RegisterImageUsingDefaults Method

RegisterImageUsingDefaults Method

Description

This function automatically positions text horizontally and vertically in the current image, providing a consistent left and top margin for documents.

Syntax

Visual Basic
Public Function RegisterImageUsingDefaults() As ImageRegistrationResults

Remarks

Use this method if the default control parameters are adequate. If the default control parameters are not adequate, use the RegisterImage method.

See Also

ScanFix Object


RemoveBlobs Method

RemoveBlobs Method
options
An object containing parameters controlling the process.

Description

Locates and removes large black objects in bitonal images.

Syntax

Visual Basic
Public Function RemoveBlobs( _
   ByVal options As BlobRemovalOptions _
) As BlobRemovalResults

Parameters

options
An object containing parameters controlling the process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveBlobsUsingDefaults Method

RemoveBlobsUsingDefaults Method

Description

Locates and removes large black objects in bitonal images.

Syntax

Visual Basic
Public Function RemoveBlobsUsingDefaults() As BlobRemovalResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveBorder Method

RemoveBorder Method
options
An object containing parameters controlling the process.

Description

Method removes rows of pixels at the edges of an image.

Syntax

Visual Basic
Public Function RemoveBorder( _
   ByVal options As BorderRemovalOptions _
) As BorderRemovalResults

Parameters

options
An object containing parameters controlling the process.

Remarks

Parameters must be True to indicate that border pixels should be removed from the output image. Since pages are rarely perfectly rectangular, some border pixels will usually remain after border removal. If ScanFix ignores a border, no margin is applied to the edges of the original image. If it finds a border, the margin applies to the edges the page, inside the detected border.

See Also

ScanFix Object


RemoveBorderUsingDefaults Method

RemoveBorderUsingDefaults Method

Description

This feature will locate border pixels and will replace them with the specified pad color and/or remove the pixels from the image.

Syntax

Visual Basic
Public Function RemoveBorderUsingDefaults() As BorderRemovalResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveCombs Method

RemoveCombs Method
options
An object containing parameters that control the enhancement process.

Description

Detects and removes combs from the current image.

Syntax

Visual Basic
Public Function RemoveCombs( _
   ByVal options As CombRemovalOptions _
) As CombRemovalResults

Parameters

options
An object containing parameters that control the enhancement process.

Return Type

An object containing information produced by the enhancement process.

See Also

ScanFix Object


RemoveCombsUsingDefaults Method

RemoveCombsUsingDefaults Method

Description

Detects and removes combs from the current image.

Syntax

Visual Basic
Public Function RemoveCombsUsingDefaults() As CombRemovalResults

Return Type

An object containing information produced by the enhancement process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveDotShading Method

RemoveDotShading Method
options
An object containing parameters controlling the process.

Description

Removes dot shading areas from a bitonal image, including actual black-on-white shading.

Syntax

Visual Basic
Public Function RemoveDotShading( _
   ByVal options As DotShadingRemovalOptions _
) As DotShadingRemovalResults

Parameters

options
An object containing parameters controlling the process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveDotShadingUsingDefaults Method

RemoveDotShadingUsingDefaults Method

Description

Removes dot shading areas from a bitonal image, including actual black-on-white shading.

Syntax

Visual Basic
Public Function RemoveDotShadingUsingDefaults() As DotShadingRemovalResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveLines Method

RemoveLines Method
options
An object containing parameters controlling the process.

Description

Detects and removes lines from the current image.

Syntax

Visual Basic
Public Function RemoveLines( _
   ByVal options As LineRemovalOptions _
) As LineRemovalResults

Parameters

options
An object containing parameters controlling the process.

Return Type

An object containing information produced by the enhancement process.

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


RemoveLinesUsingDefaults Method

RemoveLinesUsingDefaults Method

Description

Detects and removes lines from the current image.

Syntax

Visual Basic
Public Function RemoveLinesUsingDefaults() As LineRemovalResults

Remarks

Use this function if the default control parameters are adequate.

See Also

ScanFix Object


Rescale Method

Rescale Method
horizontal
The horizontal magnification to apply to the image. Default value is none.
vertical
The vertical magnification to apply to the image. Default value is none.

Description

This feature allows the image to be rescaled with the vertical and horizontal axis rescaled independently from each other.

Syntax

Visual Basic
Public Sub Rescale( _
   ByVal horizontal As Double, _
   ByVal vertical As Double _
)

Parameters

horizontal
The horizontal magnification to apply to the image. Default value is none.
vertical
The vertical magnification to apply to the image. Default value is none.

See Also

ScanFix Object


Rotate Method

Rotate Method
rotationAngle
The angle to rotate the image (measured in degrees).
padColor
The color to use to pad the image. If rotationAngle is a multiple of 90 degrees, no padding will be needed.

Description

Rotate the image by the given angle.

Syntax

Visual Basic
Public Sub Rotate( _
   ByVal rotationAngle As Double, _
   Optional ByVal padColor As OLE_COLOR = 16777215 _
)

Parameters

rotationAngle
The angle to rotate the image (measured in degrees).
padColor
The color to use to pad the image. If rotationAngle is a multiple of 90 degrees, no padding will be needed.

See Also

ScanFix Object


Shear Method

Shear Method
shearAngle
The amount of shear to apply to the image.
padColor
The color used for new pixels if necessary.

Description

Shear the image by the given amount.

Syntax

Visual Basic
Public Sub Shear( _
   ByVal shearAngle As Double, _
   Optional ByVal padColor As OLE_COLOR = 16777215 _
)

Parameters

shearAngle
The amount of shear to apply to the image.
padColor
The color used for new pixels if necessary.

Remarks

This method removes a given amount of the image by cutting or clipping.

See Also

ScanFix Object


SmoothObjects Method

SmoothObjects Method
amount
The size limit of pits and bumps to smooth in the given image.

Description

Smoothes edges in the image by the given amount in a bitonal image.

Syntax

Visual Basic
Public Sub SmoothObjects( _
   ByVal amount As Long _
)

Parameters

amount
The size limit of pits and bumps to smooth in the given image.

See Also

ScanFix Object


SmoothObjectsUsingDefaults Method

SmoothObjectsUsingDefaults Method

Description

Smoothes edges in the image by the given amount in a bitonal image.

Syntax

Visual Basic
Public Sub SmoothObjectsUsingDefaults()

Remarks

Use this function if the default amount of 3 is acceptable.

See Also

ScanFix Object


SmoothZoom Method

SmoothZoom Method

Description

Replace the current image with a new image whose width and height have been doubled and whose pixels have been smoothed.

Syntax

Visual Basic
Public Sub SmoothZoom()

See Also

ScanFix Object


ToHdib Method

ToHdib Method
release
Set to True, this parameter forces this component to release ownership of the DIB; set to False, the component retains ownership of the DIB.

Description

Returns the DIB containing the component's current image.

Syntax

Visual Basic
Public Function ToHdib( _
   ByVal release As Boolean _
) As Integer

Parameters

release
Set to True, this parameter forces this component to release ownership of the DIB; set to False, the component retains ownership of the DIB.

Remarks

If the caller wishes to take ownership of the DIB (the normal case), then the release parameter should be set to True.

Note: It is the responsibility of the caller to free this resource when when analysis is complete and the DIB is no longer needed. This can be accomplished by calling the GlobalFree method and passing in the return value from this method.

See Also

ScanFix Object


ToHdib2 Method

ToHdib2 Method
method

Description

Returns the DIB containing the component's current image.

Syntax

Visual Basic
Public Function ToHdib2( _
   ByVal method As SF_ToHdibMethod _
) As Integer

Parameters

method
Value | Description
SF_ToHdibMethod_ReturnDuplicate | Returns copy of current internal DIB image. The caller will have ownership of the returned image and must release its memory.
SF_ToHdibMethod_TransferInternalHdib | Returns current internal DIB image from ScanFix to caller. The caller takes ownership of the returned image and must release its memory.

Remarks

Note: It is the responsibility of the caller to free this resource when when analysis is complete and the DIB is no longer needed. This can be accomplished by calling the GlobalFree method and passing in the return value from this method.

See Also

ScanFix Object


ToPicture Method

ToPicture Method

Description

Returns the current image as an object.

Syntax

Visual Basic
Public Function ToPicture() As Picture

See Also

ScanFix Object


UnlockRuntime Method

UnlockRuntime Method
PW0
Unlock license code 1
PW1
Unlock license code 2
PW2
Unlock license code 3
PW3
Unlock license code 4

Description

Unlock the ScanFix6 control for use in runtime environments.

Syntax

Visual Basic
Public Sub UnlockRuntime( _
   ByVal PW0 As Long, _
   ByVal PW1 As Long, _
   ByVal PW2 As Long, _
   ByVal PW3 As Long _
)

Parameters

PW0
Unlock license code 1
PW1
Unlock license code 2
PW2
Unlock license code 3
PW3
Unlock license code 4

See Also

ScanFix Object


UnlockWeb Method

UnlockWeb Method
url
Unlock string.

Description

Unlock the ScanFix6 control for use in web servers.

Syntax

Visual Basic
Public Sub UnlockWeb( _
   ByVal url As String _
)

Parameters

url
Unlock string.

See Also

ScanFix Object


VirtualBulb Method

VirtualBulb Method
options
An object containing parameters that control the process.

Description

This function emulates a dropout scanner, and cleans an image by converting the selected hues to white, nearby colors to shades of gray and all other saturated colors to black.

Syntax

Visual Basic
Public Sub VirtualBulb( _
   ByVal options As VirtualBulbOptions _
)

Parameters

options
An object containing parameters that control the process.

See Also

ScanFix Object


Debug Property

Debug Property

Description

Gets and sets a flag to indicate if debug information is sent to a debug file.

Property type

Read-write property

Syntax

Visual Basic
Public Property Debug() As Boolean

Remarks

The default value is false.

This property allows you to turn the debug log file on or off without changing any of the other debug settings. When this is True, the toolkit will write items to the debug log file, as specified by the DebugLogFile and ErrorLevel properties.

See Also

ScanFix Object


DebugLogFile Property

DebugLogFile Property

Description

Gets and sets the debug log file name.

Property type

Read-write property

Syntax

Visual Basic
Public Property DebugLogFile() As String

Remarks

This property allows you to control the location and name of the debug log file.

The default value is "[Temp Files]\ScanFix6.log". If the ScanFix component is being run inside a web browser then the default value cannot be changed.

Valid values are any valid filename and path.

The default value for this property is suitable for interactive use. If you are using the component in a service or other type of system that runs in the background, you should set the filename to a more suitable value.

Note: This property will have no effect if you set the Debug property to False.

See Also

ScanFix Object


ErrorCode Property

ErrorCode Property

Description

Gets the error code after an error has occurred.

Property type

Read-only property

Syntax

Visual Basic
Public Property ErrorCode() As SF_ErrorCode

See Also

ScanFix Object


ErrorDescription Property

ErrorDescription Property

Description

Gets the error description string after an error has occurred.

Property type

Read-only property

Syntax

Visual Basic
Public Property ErrorDescription() As String

See Also

ScanFix Object


ErrorLevel Property

ErrorLevel Property

Description

Gets and sets level for items to be written to the debug log file.

Property type

Read-write property

Syntax

Visual Basic
Public Property ErrorLevel() As SF_ErrorLevel

Remarks

The default value is Production.

Valid values are from the SF_ErrorLevel enumeration which includes Production, Development and Detailed.

Note: This property allows you to control the amount of information that is written into the DebugLogFile.

Since it takes some amount of time to generate and write debug log items, you should set this to write the least amount of information that you will find useful.

This property will have no effect if you set the Debug property to False.

See Also

ScanFix Object


ErrorNumber Property

ErrorNumber Property

Description

Gets the error number after an error has occurred.

Property type

Read-only property

Syntax

Visual Basic
Public Property ErrorNumber() As Long

Remarks

Note: This property will be deprecated in a future release. The ErrorCode property should be used instead.

See Also

ScanFix Object


EvaluationMode Property

EvaluationMode Property

Description

Gets and sets the evaluation mode of this component.

Property type

Read-write property

Syntax

Visual Basic
Public Property EvaluationMode() As SF_EvaluationChoice

See Also

ScanFix Object


HorizontalResolution Property

HorizontalResolution Property

Description

Gets and sets the horizontal resolution of the current image.

Property type

Read-write property

Syntax

Visual Basic
Public Property HorizontalResolution() As Single

Remarks

Note: Single variables are stored as signed IEEE 32-bit (4-byte) single-precision floating-point numbers. They range in value from -3.4028235E+38 through -1.401298E-45 for negative values and from 1.401298E-45 through 3.4028235E+38 for positive values. Single-precision numbers store an approximation of a real number.

The Single data type can be converted to the Double or Decimal data type without encountering a System.OverflowException error. Appending the literal type character F to a literal forces it to the Single data type. Appending the identifier type character ! to any identifier forces it to Single.

See Also

ScanFix Object


ImageHeight Property

ImageHeight Property

Description

Gets the height of the current image in pixels.

Property type

Read-only property

Syntax

Visual Basic
Public Property ImageHeight() As Long

See Also

ScanFix Object


ImageResolution Property

ImageResolution Property

Description

Gets the resolution object for ScanFix.

Property type

Read-only property

Syntax

Visual Basic
Public Property ImageResolution() As Resolution

See Also

ScanFix Object


ImageWidth Property

ImageWidth Property

Description

Gets the width of the current image in pixels.

Property type

Read-only property

Syntax

Visual Basic
Public Property ImageWidth() As Long

See Also

ScanFix Object


LicenseEdition Property

LicenseEdition Property

Description

Gets and sets the license edition of this component.

Property type

Read-write property

Syntax

Visual Basic
Public Property LicenseEdition() As SF_LicenseChoice

See Also

ScanFix Object


RaiseExceptions Property

RaiseExceptions Property

Description

Indicates whether the control will throw exceptions.

Property type

Read-write property

Syntax

Visual Basic
Public Property RaiseExceptions() As Boolean

See Also

ScanFix Object


ResolutionUnits Property

ResolutionUnits Property

Description

Gets and sets the unit of measure for the vertical and horizontal resolutions.

Property type

Read-write property

Syntax

Visual Basic
Public Property ResolutionUnits() As SF_ResolutionUnits

Remarks

Select the resolution from the SF_ResolutionUnits enumeration.

Note: Does not support World and Pixel units. An error message appears if either of those are selected. Sets the unit of measure: 0 - sets to inches, 1 - sets to centimeters, 2 - sets to meters.

See Also

ScanFix Object


VerticalResolution Property

VerticalResolution Property

Description

Gets and sets the vertical resolution of the current image.

Property type

Read-write property

Syntax

Visual Basic
Public Property VerticalResolution() As Single

See Also

ScanFix Object


ShearOptions Object

ShearOptions Object
See Also Members Send Feedback

Description

Defines the Shear options used with shear image enhancement.

Remarks

This object is added to an enhancement list to be processed along with other enhancements on an image.

See Also

ShearOptions Members


ShearOptions Object Members

ShearOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property padColor | The color to use to pad the image.
Public Property shearAngle | Gets and sets the amount of shear to apply to the image.

See Also

ShearOptions Overview


padColor Property

padColor Property

Description

The color to use to pad the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property padColor() As OLE_COLOR

Remarks

The default value is White.

See Also

ShearOptions Object


shearAngle Property

shearAngle Property

Description

Gets and sets the amount of shear to apply to the image.

Property type

Read-write property

Syntax

Visual Basic
Public Property shearAngle() As Double

Remarks

The default value is 0.0.

Valid values are -360.0 to 360.0.

See Also

ShearOptions Object


ShearResults Object

ShearResults Object
See Also Members Send Feedback

Description

Defines a place holder object for the Shear enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

ShearResults Members


ShearResults Object Members

ShearResults Object Members
See Also Overview Send Feedback

See Also

ShearResults Overview


SmoothObjectsOptions Object

SmoothObjectsOptions Object
See Also Members Send Feedback

Description

Defines the SmoothObjects options used with the smooth objects enhancement.

Remarks

This object is added to an enhancement list to be processed along with other enhancements on an image.

See Also

SmoothObjectsOptions Members


SmoothObjectsOptions Object Members

SmoothObjectsOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property amount Gets and sets the size limit of pits and bumps to smooth in the given image.

See Also

SmoothObjectsOptions Overview


amount Property

amount Property

Description

Gets and sets the size limit of pits and bumps to smooth in the given image.

Property type

Read-write property

Syntax

Visual Basic
Public Property amount() As Long

Remarks

The default value is 3.

Valid values are 1 to 1000.

See Also

SmoothObjectsOptions Object


SmoothObjectsResults Object

SmoothObjectsResults Object
See Also Members Send Feedback

Description

Defines a place holder object for the Smooth Objects enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

SmoothObjectsResults Members


SmoothObjectsResults Object Members

SmoothObjectsResults Object Members
See Also Overview Send Feedback

See Also

SmoothObjectsResults Overview


SmoothZoomOptions Object

SmoothZoomOptions Object
See Also Members Send Feedback

Description

Defines a place holder object for the Smooth Zoom image enhancement.

Remarks

This object is added to an enhancement list to be processed along with other enhancements on an image.

See Also

SmoothZoomOptions Members


SmoothZoomOptions Object Members

SmoothZoomOptions Object Members
See Also Overview Send Feedback

See Also

SmoothZoomOptions Overview


SmoothZoomResults Object

SmoothZoomResults Object
See Also Members Send Feedback

Description

Defines a place holder object for the Smooth Zoom enhancement result.

Remarks

This object contains no data. Its presence in the results list is used to determine that the operation has run successfully.

See Also

SmoothZoomResults Members


SmoothZoomResults Object Members

SmoothZoomResults Object Members
See Also Overview Send Feedback

See Also

SmoothZoomResults Overview


VirtualBulbOptions Object

VirtualBulbOptions Object
See Also Members Send Feedback

Description

This object contains parameters that control the VirtualBulb process.

Object Model

See Also

VirtualBulbOptions Members


VirtualBulbOptions Object Members

VirtualBulbOptions Object Members
See Also Overview Send Feedback

Public Properties

Public Property extract | Gets and sets flag to extract specified list of hues by converting them to black and drop all other hues (including black) to white.
Public Property hueRadiusList | Get Hue Radius List object.

See Also

VirtualBulbOptions Overview


extract Property

extract Property

Description

Gets and sets flag to extract specified list of hues by converting them to black and drop all other hues (including black) to white.

Property type

Read-write property

Syntax

Visual Basic
Public Property extract() As Boolean

Remarks

The default value is False.

Note: Normal operation is to drop specified hues to white and convert all other hues to black. Enabling Extract will keep only the specified hues.

See Also

VirtualBulbOptions Object


hueRadiusList Property

hueRadiusList Property

Description

Get Hue Radius List object.

Property type

Read-write property

Syntax

Visual Basic
Public Property hueRadiusList() As HueRadiusCollection

See Also

VirtualBulbOptions Object


VirtualBulbResults Object

VirtualBulbResults Object
See Also Members Send Feedback

Description

Defines a place holder class for the VirtualBulb enhancement result.

See Also

VirtualBulbResults Members


VirtualBulbResults Object Members

VirtualBulbResults Object Members
See Also Overview Send Feedback

See Also

VirtualBulbResults Overview


WeightMatrix Object

WeightMatrix Object
See Also Members Send Feedback

Description

Holds 2-dimensional collection of weight values that define the matrix for a custom filter.

Remarks

A WeightMatrix object will be empty (i.e. height = 0 and width = 0) when first created. The SetDimensions method must be called to specify the size before any data can be set using the Item property.

See Also

WeightMatrix Members


WeightMatrix Object Members

WeightMatrix Object Members
See Also Overview Send Feedback

Public Methods

Public Method Clear | Sets all weights in the collection to zero (0).
Public Method SetDimensions | Sets or changes dimensions of 2-D matrix.

Public Properties

Public Property height | Gets height of 2-D matrix.
Public Property Item | Gets or sets weight value at a specific row/column location in the matrix.
Public Property width | Gets width of 2-D matrix.

See Also

WeightMatrix Overview


Clear Method

Clear Method

Description

Sets all weights in the collection to zero (0).

Syntax

Visual Basic
Public Sub Clear()

See Also

WeightMatrix Object


SetDimensions Method

SetDimensions Method
columns
Width of matrix (# columns).
rows
Height of matrix (# rows).

Description

Sets or changes dimensions of 2-D matrix.

Syntax

Visual Basic
Public Sub SetDimensions( _
   ByVal columns As Long, _
   ByVal rows As Long _
)

Parameters

columns
Width of matrix (# columns).
rows
Height of matrix (# rows).

Remarks

This method sets all weight values in the matrix to zero (0) - even if the matrix size is not changed.

See Also

WeightMatrix Object


height Property

height Property

Description

Gets height of 2-D matrix.

Property type

Read-write property

Syntax

Visual Basic
Public Property height() As Long

Return Type

Height of matrix is set by calling the SetDimensions method.

See Also

WeightMatrix Object


Item Property

Item Property
column
Number of column for weight value, 0-based.
row
Number of row for weight value, 0-based.

Description

Gets or sets weight value at a specific row/column location in the matrix.

Property type

Read-only property

Syntax

Visual Basic
Public Property Item( _
   ByVal column As Long, _
   ByVal row As Long _
) As Long

Parameters

column
Number of column for weight value, 0-based.
row
Number of row for weight value, 0-based.

See Also

WeightMatrix Object


width Property

width Property

Description

Gets width of 2-D matrix.

Property type

Read-write property

Syntax

Visual Basic
Public Property width() As Long

Remarks

Width of matrix is set by calling the SetDimensions method.

See Also

WeightMatrix Object


SF_AutomaticMode Enumeration

SF_AutomaticMode Enumeration

Description

AutomaticMode - modes for automatic ImageDetergent operation.

Members

Member | Value | Description
SF_AutomaticMode_Auto3Color | 0 | Automatically cleans image for these colors: Black, White and Dominant hue.
SF_AutomaticMode_Auto8Color | 1 | Automatically cleans image for these colors: Black, White, Red, Green, Blue, Cyan, Magenta and Yellow.
SF_AutomaticMode_ColorCount | 2 | Automatically cleans image for the specified (ColorCount field) number of dominant colors.


SF_BinarizeBlur Enumeration

SF_BinarizeBlur Enumeration

Description

Binarize Blur is used to set the pre-blur option of the Binarize feature.

Members

Member | Value | Description
SF_BLUR_NONE | 0 | This setting will not blur the image before the local contrast enhancement/binarization process.
SF_BLUR_GAUSSIAN | 1 | This setting will apply a Gaussian blur to the image before the local contrast enhancement/binarization process.
SF_BLUR_SMART | 2 | This setting removes dither-like artifacts introduced into many images already binarized to 1-bit by other software or hardware operations.

Remarks

Alternative modes may be chosen according to the type of image and desired results.


SF_BrightnessContrastAdjustment Enumeration

SF_BrightnessContrastAdjustment Enumeration

Description

BrightnessContrastAdjustment specification values.

Members

Member | Value | Description
SF_BrightnessContrastAdjustment_NoFix | 0 | Do not change image for contrast, analyze and generate results only.
SF_BrightnessContrastAdjustment_Automatic | 1 | Automatic contrast adjustment.
SF_BrightnessContrastAdjustment_ForceAdaptive | 2 | Force to use adaptive contrast adjustment.
SF_BrightnessContrastAdjustment_ForceGlobal | 3 | Force to use global contrast adjustment.


SF_BrightnessContrastSuggestion Enumeration

SF_BrightnessContrastSuggestion Enumeration

Description

BrightnessContrast adjustment suggestion values.

Members

Member | Value | Description
SF_BrightnessContrastSuggestion_Ok | 0 | No image change required to archive desired contrast targets.
SF_BrightnessContrastSuggestion_Bad | 1 | Image has insufficient difference between contrast and noise to adjust.
SF_BrightnessContrastSuggestion_Adaptive | 2 | Adaptive contrast adjustment should be used.
SF_BrightnessContrastSuggestion_Global | 3 | Global contrast adjustment should be used.


SF_ColorFindings Enumeration

SF_ColorFindings Enumeration

Description

ColorFindings - values for collection of findings returned by DetectColor.

Members

Member | Value | Description
SF_ColorFindings_Unsaturated | 1 | Set if overall saturation of the image is less than MinimumSaturation.
SF_ColorFindings_NoItems | 2 | No significant saturated items found in the image.
SF_ColorFindings_FewItems | 3 | Indicates that large, saturated objects were found, but not a number sufficient to trigger an "is color" result.
SF_ColorFindings_SmallItems | 4 | Indicates that objects of more than 50% of MinimumSize, but less than MinimumSize, were found.
SF_ColorFindings_Saturated | 5 | Indicates the overall saturation of the image was above MinimumSaturation.
SF_ColorFindings_FoundItems | 6 | Indicates that the image had a sufficient number of large, saturated color objects.
SF_ColorFindings_PaperColorIgnored | 7 | Image is more that 50% of MiminumSaturation and dominant hue pixels were ignored.


SF_EnhancementDirections Enumeration

SF_EnhancementDirections Enumeration

Description

Specifies the direction of the operation for the Dilate and Erode methods.

Members

Member | Value | Description
SF_LEFT | 1 | Dilate or Erode Left.
SF_RIGHT | 2 | Dilate or Erode Right.
SF_UP | 4 | Dilate or Erode Up.
SF_DOWN | 8 | Dilate or Erode Down.
SF_ALL | 15 | Dilate or Erode All Directions.


SF_Enhancements Enumeration

SF_Enhancements Enumeration

Description

The enhancements available for use with the ExecuteEnhancements method.

Members

Member | Value | Description
SF_ENHANCEMENT_AUTOBINARIZE | 0 | Creates an enhanced 1-bit output DIB using pre-determined settings.
SF_ENHANCEMENT_BINARIZE | 1 | Creates an enhanced 1-bit output DIB using settings set by the caller.
SF_ENHANCEMENT_CORRECT_INVERSE_TEXT | 2 | Reverses black and white text.
SF_ENHANCEMENT_CORRECT_NEGATIVE_PAGE | 3 | Determines if the image is black on white (normal) or white on black (negative), and optionally negate the image if it is.
SF_ENHANCEMENT_DESKEW | 4 | Detects the skew angle of the current image and rotates the image to remove that skew.
SF_ENHANCEMENT_DESPECKLE | 5 | Detects and removes specks from the current image.
SF_ENHANCEMENT_DETECT_BLANK_PAGE | 6 | Examines an image and determines if the amount of data there is low enough for the page to be considered blank.
SF_ENHANCEMENT_DETECT_BLANK_RECTANGLE | 7 | Examines a rectangle on an image and determines if the amount of data there is low enough for the page to be considered blank.
SF_ENHANCEMENT_DILATE | 8 | Expand the black pixels in the image by one in each direction.
SF_ENHANCEMENT_ERODE | 9 | Remove the black pixels in the image by one in each direction.
SF_ENHANCEMENT_FLIP | 10 | Flip the image (swap the top and bottom).
SF_ENHANCEMENT_GET_RECTANGLE | 11 | Replaces the current image with a subset of the original image.
SF_ENHANCEMENT_MIRROR | 12 | Mirrors the image (swap the left and right sides).
SF_ENHANCEMENT_NEGATE | 13 | Negate the image (exchange white and black).
SF_ENHANCEMENT_REMOVE_BLOBS | 15 | Locates and removes large black objects in images.
SF_ENHANCEMENT_REMOVE_BORDER | 16 | Method removes rows of pixels at the edges of an image.
SF_ENHANCEMENT_REMOVE_COMBS | 17 | Detects and removes combs from the current image.
SF_ENHANCEMENT_REMOVE_DOT_SHADING | 18 | Removes dot shading areas from an image, including actual black-on-white shading.
SF_ENHANCEMENT_REMOVE_LINES | 19 | Detects and removes lines from the current image.
SF_ENHANCEMENT_RESCALE | 20 | Allows the image to be rescaled with the vertical and horizontal axis rescaled independently from each other.
SF_ENHANCEMENT_ROTATE | 21 | Rotate the image by the given angle.
SF_ENHANCEMENT_SHEAR | 22 | Shear the image by the given amount.
SF_ENHANCEMENT_SMOOTH_OBJECTS | 23 | This feature smoothes the edges of characters.
SF_ENHANCEMENT_SMOOTH_ZOOM | 24 | Replace the current image with a new image whose width and height have been doubled and whose pixels have been smoothed.
SF_ENHANCEMENT_REGISTER_IMAGE | 25 |
SF_ENHANCEMENT_IMAGE_DETERGENT | 26 |
SF_ENHANCEMENT_DETECT_COLOR | 27 |
SF_ENHANCEMENT_COLOR_DROP | 28 |
SF_ENHANCEMENT_VIRTUAL_BULB | 29 |
SF_ENHANCEMENT_ADJUST_CONTRAST | 30 |
SF_ENHANCEMENT_FILTER | 31 |


SF_ErrorCode Enumeration

SF_ErrorCode Enumeration

Members

Member | Value | Description
SF_ErrorCode_Ok | 0 | No error.
SF_ErrorCode_Null_Argument | 14000 | Error message occurs when a parameter is set to null. The error message indicates the name of the null parameter.
SF_ErrorCode_Parm_Range | 14001 | Argument Out of Range - This error message occurs when a parameter is outside the acceptable range. The error message indicates the name of the parameter that was out of range.
SF_ErrorCode_Null_Image | 14002 | Invalid Operation - This error message occurs when an invalid operation is attempted. The message indicates the name of the operation.
SF_ErrorCode_Bad_Enum | 14003 | Invalid Enumeration Argument - This error message occurs when an enumeration is set to an invalid value. The message indicates the name of the enumeration.
SF_ErrorCode_Out_Of_Memory | 14004 | This error message occurs when the system does not have enough memory to perform the requested operation.
SF_ErrorCode_Internal | 14005 | Internal error during ScanFix object initialization.
SF_ErrorCode_Image_Type | 14100 | Unsupported Image - This error message occurs when trying to process an image that is unsupported.
SF_ErrorCode_Cannot_Pad | 14150 | Parameter Mismatch - This error occurs during a call to GetRectangle if the height and width are not greater than zero or padding is attempted when not allowed. It may be followed by one of these error strings: "Width and height must both be greater than zero, re-check parameters." "Padding not permitted, re-check parameters."
SF_ErrorCode_Bad_DE_Direction | 14151 | Parameter Mismatch - This error occurs during a call to Dilate or Erode if the Direction and OnlyDiagonal properties are set to conflicting values. If OnlyDiagonal is set to true, Direction must be set to exactly two adjacent directions. It may be followed by this error string: "Options.direction indicates an invalid direction for diagonal only operation."
SF_ErrorCode_Handle_In_Use | 14200 | Handle Error - This error occurs during a call to any of the enhancement methods if the image handle is in use. It may be followed by this message: "Image is locked and cannot be modified."
SF_ErrorCode_Bad_Handle | 14201 | Handle Error - This error occurs during the DIB conversion process and may be followed by this message: "Could not retrieve data from handle."
SF_ErrorCode_Opcode_Load | 14300 | Internal Error - This is an internal error and may be followed by this message: "Failure loading ScanFix Xpress operation code."
SF_ErrorCode_PICTools | 14301 | InternaParameter Mismatch Error - This is an internal error and may be followed by a message such as: "... internal initialization exception." "... internal execution exception." "... internal termination exception."
SF_ErrorCode_Image_BitCount | 14400 | Image Bit Count not supported Error - This is an internal error and may be followed by a message such as: "This function does not support the bit count of the current image."
SF_ErrorCode_License | 14500 | Licensing Error - This error will occur when attempting to perform a function that is not allowed under the current license and may be followed by this message: "The component is not licensed to perform this function."
SF_ErrorCode_Stream_Read | 14550 | Read from Stream Error - This error will occur when attempting to read from a stream and that stream is not formatted properly. This message will display: "An error occurred while reading the stream input in.... "
SF_ErrorCode_Stream_Write | 14551 | Write to Stream Error - This error will occur when attempting to write to a stream. This message will display: "An error occurred while writing the stream output in.... "
SF_ErrorCode_Unknown | 14898 | Miscellaneous Error - This is a miscellaneous error that can occur and may be followed by a message such as: "An unexpected error occurred in ..." "Provided handle was not an HBITMAP." "Unable to get object information." "Could not create context for converting to HBITMAP."


SF_ErrorLevel Enumeration

SF_ErrorLevel Enumeration

Description

Defines the amount of error information in the debug log.

Members

Member | Value | Description
SF_PRODUCTION | 0 | The default error level. This setting will produce the minimum amount of error information.
SF_DEVELOPMENT | 1 | This setting will produce additional error information that is useful during the development process.
SF_DETAILED | 2 | This setting will produce detailed error information that is useful when debugging a problem during the development process.


SF_EvaluationChoice Enumeration

SF_EvaluationChoice Enumeration

Description

Evaluation modes - choices for control behavior when licensed for trial use.

Members

Member | Value | Description
SF_TRIAL_DIALOG | 0 | A dialog box will be displayed at the first use of ScanFix Xpress and periodically thereafter. This evaluation mode is suitable for use in applications that have a visible user interface.
SF_TIMEOUT | 1 | After a period of time the ScanFix control will stop working and will return errors. This evaluation mode is suitable for use in applications that do or do not have a visible user interface.
SF_WATERMARK | 2 | The images produced by ScanFix Xpress will be stamped with the word "Evaluation". This evaluation mode is suitable for use in applications that do or do not have a visible user interface.


SF_FilterDirection Enumeration

SF_FilterDirection Enumeration

Description

FilterDirection - direction options for filter.

Members

Member | Value | Description
SF_FilterDirection_Horizontal | 0 | Horizontal filter.
SF_FilterDirection_Vertical | 1 | Vertical filter.


SF_FromHdibMethod Enumeration

SF_FromHdibMethod Enumeration

Description

Option values which determine how the FromHdib2() method operates.

Members

Member | Value | Description
SF_FromHdibMethod_CreateCopy | 0 | The ScanFix object creates a copy of the DIB passed via hdib parameter. Ownership of the DIB remains with the caller.
SF_FromHdibMethod_TransferInternalHdib | 1 | The ScanFix object takes ownership of the DIB passed via the hdib parameter.


SF_LicenseChoice Enumeration

SF_LicenseChoice Enumeration

Description

Specifies the edition of the control.

Members

Member | Value | Description
SF_BITONAL_EDITION | 30 | Bitonal Edition - cleanups for bitonal images only.
SF_BITONALPLUSCOLOR_EDITION | 40 | Bitonal+Color Edition - cleanups for all image types supported.


SF_ResolutionUnits Enumeration

SF_ResolutionUnits Enumeration

Description

Sets or returns the unit of measurement used.

Members

Member | Value | Description
SF_INCH | 0 | Measured in inches.
SF_CM | 1 | Measured in centimeters.
SF_METER | 2 | Measured in meters.


SF_ToHdibMethod Enumeration

SF_ToHdibMethod Enumeration

Description

Option values which determine how the ToHdib2() method operates.

Members

Member | Value | Description
SF_ToHdibMethod_ReturnDuplicate | 0 | Returns copy of current internal DIB image. The caller will have ownership of the returned image and must release its memory.
SF_ToHdibMethod_TransferInternalHdib | 1 | Returns current internal DIB image from ScanFix to caller. The caller takes ownership of the returned image and must release its memory.


Project Overview

Project Overview
Send Feedback

Description

Accusoft ScanFix Xpress 6

Projects

Project | Description
AccusoftScanFixXpress6 | Accusoft ScanFix Xpress 6


Enumerations Object

Enumerations Object
See Also Members Send Feedback

See Also

Enumerations Members


Enumerations Object Members

Enumerations Object Members
See Also Overview Send Feedback

See Also

Enumerations Overview