%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

What is BarcodeXpress

Barcode Xpress™, Version 5 is a powerful control which reads most commonly used 1D barcodes, detecting them in any orientation anywhere on the page. It accurately reads common industry 1D and 2D barcodes, writes most 1D barcodes and many 2D barcodes.

Barcode Xpress ships with ScanFix Lite and ImagXpress, providing world class image clean up capability for use with Barcode Xpress. Configurable speed settings are available to suit various application and budget requirements.

New Features in Version 5.0

Barcode Xpress 5.0 now provides the capability to recognize these additional Barcodes:

  • Australian Post 4-State Barcode
  • Royal Post 4-State Barcode
  • Intelligent Mail
  • QRcode

Additional Property:

ReaderScanDistance Property - Gets and sets the scan distance in pixels between line sweeps when searching for 1D barcodes.

Additional Enumeration Values:

BC_Orientation Enumeration - Additional value options provide more flexibility for recognition.

BC_OrientationHorizontalVertical - Searches for barcodes in horizontal and vertical directions.

BC_OrientationHorizontalVerticalDiagonal - Searches for barcodes in horizontal, vertical and 45 degrees.

Deprecated:

AnalyzeBarcode Method - Deprecated and replaced by the AnalyzehDib and AnalyzeIPicture methods.

AnalyzeBC Method - Deprecated and replaced by the AnalyzehDib and AnalyzeIPicture methods.

hDIB Property - Deprecated and replaced by the AnalyzehDib method.

Picture Property - Deprecated and replaced by the AnalyzeIPicture method.

SSError Property - Deprecated and replaced by the ErrorCode property.

SSErrorMsg Property - Deprecated and replaced by the ErrorDescription property.

Primary Features Include:

  • Detect, read and write 1D and 2D barcodes
  • Recognize barcodes located anywhere on a page
  • Report confidence values for detected barcodes
  • Provides image input, output and handling by the included ImagXpress component
  • Provides advanced pre-process functionality for image cleanup and modification prior to analysis
  • Supported barcode read types:

Show 1D linear barcodes and PatchCode

Add 2

Add 5

BCD Matrix

Codabar

Code 32

Code 39

Code 39 Extended

Code 93

Code 93 Extended

DataLogic 2 of 5

EAN-128

EAN-13 and JAN

EAN-8

IATA 2 of 5

Code 128

Industry 2 of 5

Interleaved 2 of 5

Inverted 2 of 5

Matrix 2 of 5

PatchCode (not included as 1D barcode type)

PostNet (not included as 1D barcode type)

UPC-A

UPC-E

4 State Post Codes

Australian Post 4-State Barcode

Intelligent Mail

Royal Post 4-State Barcode

Show 2D barcodes

PDF417

DataMatrix

QRcode

Barcode Xpress Editions:

BarcodeXpress version 5 is offered in three editions, Standard, Professional, and Professional Plus 2D Write edition as listed below. BarcodeXpress Professional Plus 2D Write is the default edition which has the maximum functionality available.

  • BarcodeXpress Standard: is for developers deploying a moderate speed scanning solution, with up to a few barcodes per page.

Standard edition reads approximately 4 barcodes per second. This version suits most document imaging barcode applications.

  • BarcodeXpress Professional: is the unlimited speed barcode engine.

Professional edition is for high-end, high-volume imaging applications where speed is critical for the success of the application. It reads as fast as the processor can handle! It reads and writes common 1D barcodes and reads 2D PDF417, DataMatrix and QR barcodes. The Professional edition and Professional Plus 2D Write create all reading speeds, allowing integrators to sell various speed and price options.

  • BarcodeXpress Professional Plus 2D Write:

    In addition to all the features the regular Professional edition supports including unlimited speed, this edition also includes the ability to write PDF417 and DataMatrix 2D barcodes.

    Caution: When using trial (unpaid) licensing, the words "UNLICENSED www.jpg.com" will appear in the middle of every DataMatrix and PDF417 barcode created, taking up 24 bytes of space including a space before and after. When testing the contents of generated barcodes, be aware of the extra space requirements.

Additional Pegasus Imaging components in Barcode Xpress include:

  • ScanFix Xpress Lite offering superior image clean up and enhancement capabilities.
  • ImagXpress™ for image import from various formats and advanced image enhancement and clean up.
  • TwainPRO™ to acquire images from TWAIN devices.

Note: Barcode Xpress v5 requires 1-bit black and white images. Conversion from color or grayscale images is also available by using the included ImagXpress ColorDepth method or other methods within the included ImagXpress component.

For applications requiring image thresholding, superior results may be obtained by using the Binarize method in ScanFix Bitonal edition, or the Binarize method in ImagXpress Document edition. They use the same underlying technology.

ImagXpress Standard is included in the purchase of Barcode Xpress. Customers may upgrade to ImagXpress Document for more powerful document imaging features such as more advanced thresholding, multi-page file support, powerful annotation, thumbnail image support, advanced image cleanup, and advanced printing capabilities.

ScanFix Xpress Lite edition is included in the purchase of Barcode Xpress. ScanFix Xpress Lite edition offers image deskew, despeckle, negate, flip, rotate, mirror, line removal, dilate and erode, smooth zoom, and crop. Customers may upgrade to ScanFix Bitonal edition for advance image cleanup features, including automated and customer directed thresholding (binarization), dot shading removal, auto inverse text correction, (character) smoothing and completion, blank page detection, image scaling, two types of border removal, auto negate, comb removal, blob removal and the ability to set image resolution.

Contact Sales for upgrade pricing.

For information on how to register and license all your Pegasus Imaging components, see Licensing.

© 1997 - 2007, Pegasus Imaging Corporation, All Rights Reserved.


%%ItemTitle%%

Glossary Item Box

License Agreement

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Getting Support and Samples

Benefits of Registering your Pegasus Development Kit

Purchasers of development kits need to register with Pegasus in order to be notified of updates and receive support now or in the future. Registration is automatic when purchased directly from the Pegasus web site. If purchased through a Pegasus re-seller, please register your purchase by filling out the form at PegasusImaging.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 .NET framework:

  • Microsoft VisualBasic.Net
  • Microsoft C#

Access the samples

  • Through the Windows Start menu: Start | Programs | Pegasus Imaging | BarcodeXpress | Samples
  • Sample image files included

Sample Code Newsgroups

Customers create samples of great benefit to other developers, so we created a Sample Code Newsgroup. This is a newsgroup for our customers and potential customers. They post and receive sample code from our development team and other developers to expedite their development. Go online at:

http://www.PegasusImaging.com/samplecode.htm

Web Support

Visit the Pegasus Imaging web site frequently asked questions page (PegasusImaging.com/faq.htm for the fastest answers to common questions. The web site also provides other support options that are accessible at PegasusImaging.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@JPG.com responds instantly to e-mail received with a helpful set of locations to find additional information on Pegasus products including FAQ's, sample code, newsgroup locations 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@JPG.com . They will assist you promptly.

Newsgroup Support

The Publicly accessible NNTP news groups located at News.PegasusImaging.com are available for each of the Controls as well as advanced imaging technology and a sample code group. We expect that the development community will freely access and search these newsgroups to find common questions and answers regarding specific uses of the controls.

On-Demand Phone Support

On-demand priority phone support can be purchased in 15 minute increments with a credit card via the Pegasus Imaging Corporation 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, 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 Pegasus Imaging 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. Pegasus Imaging reserves the right to change the terms of this service at any renewal period. Send e-mail to Sales@JPG.com for more information.

2. Galleon Support

Customers are given the opportunity to purchase Galleon Support for Pegasus Imaging products that are applications and for products that require runtime licensing. Galleon Support includes licensing of product upgrades for deployed installations at no additional license fee cost.Pegasus Imaging reserves the right to change the terms of this service at any renewal period. Send e-mail to Sales@JPG.com for more information.

3. Atlas Support

All Pegasus Imaging 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. Pegasus Imaging reserves the right to change the terms of this service at any renewal period. E-mail Sales@JPG.com for more information.

To determine if you have the latest version of a Pegasus Imaging development toolkit, please download the PegConnect utility program. Please note that a Help File for each product may be found on the Start bar under Pegasus or in C:\Windows\Help.

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

See Also

License Agreement


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Pegasus Imaging Corporation

Pegasus Imaging is uniquely positioned to serve as your leading imaging technology supplier. A full suite of document imaging toolkits, forms processing technology, medical image compression SDKs, photo editing and compression libraries, browser-based image viewers, and video codecs provide advanced technology designed to enhance imaging software solutions. Fully functional trial downloads and customer-acclaimed support allow you to be certain your requirements will be met before purchase. Work with the best. Choose Pegasus Imaging for all your imaging needs.

Visit www.pegasusimaging.com for full product descriptions, FAQ's, downloads, demos, and contact information.

Pegasus Imaging

4001 North Riverside Drive

Tampa, FL 33603

Sales: 813-875-7575

Fax: 813-875-7705

Copyrights & Trademarks

Pegasus and the Pegasus Horse Logo are registered marks (®) of Pegasus Imaging Corporation.

Barcode Xpress, CapturePRO, FilePrinter, FormAssist, FormDirector, FormSuite, ImagXpress, ISIS Xpress, The JPEG Wizard, MedXpress, NotateXpress, BarcodeXpress, PDF Xpress, PICTools, ePIC, PICVideo, PrintPRO, SmartScan Xpress, SmartZone, ThumbnailXpress, and TwainPRO are trademarks (™) of Pegasus Imaging Corporation.

FormFix, ScanFix, Prizm, ColorDrop, ColorEnhance, ColorFind, ColorForms, CompressDirector, Digital Mark Recognition (DMR), Image Detergent, ViewDirector and Virtual Scoring Center (VSC) by assignment are trademarks (™) or registered trademarks (®) of Pegasus Imaging Corporation.

Pegasus Imaging 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 Pegasus Imaging Corporation.

Microsoft, Microsoft.NET, 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.


%%ItemTitle%%

Glossary Item Box

Getting Support and Samples

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Operating Requirements

Barcode Xpress Operating Requirements

Operating Systems

Barcode Xpress runs on 32-bit Microsoft Windows operating systems: Vista, 2000 Professional and Server, XP Home and Professional and Server 2003. It works with 32-bit Windows versions running on 32 and 64-bit processors. It runs in 32-bit executables running under 64-bit Windows 2000 Server and 2003 Server. Although it may run, it is not supported on previous Windows versions (for example, Windows 95 and Windows 98).

Threading

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.

Development environment

Microsoft Visual Basic 6

Microsoft Visual C++ 6

Delphi 7 and 8

Caching Data and Memory Usage

During normal operation Barcode Xpress caches data to temporary files on the hard drive. The size of the image and the amount of text on an image dictate how much hard drive space each page uses. Each page added to a document also increases the amount of hard drive space needed. To ensure effective operation, there should be 7 to 8 MB of hard drive space for each 8 1/2 by 11 inch 300dpi 24bpp page of full text at 12pt font size.

See Also

Getting Support and Samples


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Installing on a Development Machine

To Install Barcode 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 the Start|Programs|Pegasus Imaging|BarcodeXpress v5.0 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 Applications and Deployment' 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 Pegasus Imaging Corporation. The paid licenses override trial licenses.

To Use Barcode Xpress Help Files

Stand-alone Help file "PegasusImaging.ActiveX.BarcodeXpress5.chm"

Access the Barcode Xpress stand-alone help through the Windows Start menu: Start | Programs | Pegasus Imaging | BarcodeXpress v5.0

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

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


%%ItemTitle%%

Glossary Item Box

LicenseEdition Property | EvaluationMode Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Trial Mode

Default Installation

The default installation installs Trial Mode licensing. This allows you to test features and functions and develop applications but not distribute them. Installing Barcode Xpress in trial mode provides you with access to all features and functionality of the Barcode Xpress product. E-mail support is available with the trial license.

When using the trial version of Barcode Xpress, an evaluation dialog box displays periodically.

Caution: When using trial (unpaid) licensing, the words "UNLICENSED www.jpg.com" will appear in the middle of every DataMatrix and PDF417 barcode created, taking up 24 bytes of space including a space before and after. When testing the contents of generated barcodes, be aware of the extra space requirements.

Applications built with a trial license can only be run on a computer that has Barcode Xpress Licensing installed on it.

Changing Trial Mode Behavior

You have the flexibility to change the behavior of Barcode Xpress in evaluation mode as follows:

  • To facilitate server/service mode evaluations, you can choose to halt the component processing after 5 minutes in lieu of displaying an evaluation dialog box periodically. This is the BC_EvalModeTimeOut setting for the EvaluationMode property.

Changing BarcodeXpress Edition

Installing Barcode Xpress in trial mode enables you to try out all the editions associated with Barcode Xpress, by setting the LicenseEdition property. Any edition for which you do not have paid licensing will display the evaluation dialog box or timeout. For example, if you have paid for and installed the licensing strings for the Barcode Xpress Standard and you would like to evaluate Barcode Xpress Professional, you can change the LicenseEdition property from Standard to Professional. The component will then run in Professional mode with trial behavior, including the periodic display of dialog boxes.

See Also

LicenseEdition Property | EvaluationMode Property


%%ItemTitle%%

Glossary Item Box

Trial Mode | License Agreement | Getting Support and Samples

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

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 BarcodeXpress development kit.

1. Purchase Development Kit(s)

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

  • Purchase online at http://www.PegasusImaging.com/. Contact Sales@jpg.com.
  • Contact a Pegasus Imaging Corporation 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 Barcode Xpress Product

When you purchase BarcodeXpress online or through Sales@JPG.com, your product ownership is automatically registered.

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

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

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

3. Update Your Barcode Xpress product version from trial to paid licensing

Updating your Barcode Xpress from trial to paid licensing will suppress the trial behavior, including the evaluation dialog box or timeout. This must be done for each component within the Barcode Xpress toolkit that you are using (for example, Barcode Xpress, ImagXpress or other included components). The email you receive when you purchase the product will include entries for each component.

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.PegasusImaging.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.
  • Rebuild any applications that used the components with trial licensing

For more information on Runtime licensing, see the Pegasus Imaging website for more detailed information regarding Runtimes and Deployment Licensing.

See Also

Trial Mode | License Agreement | Getting Support and Samples


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Runtime Licensing

Runtime & Deployment Licensing

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

Locking Mechanism

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

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 Pegasus code.

Pegasus Imaging 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 Pegasus Imaging Corporation. These "end user" licenses provide the terms and limits of number and usage.

All prospective customers have every opportunity to evaluate Pegasus Imaging's products prior to purchasing. Product licensing is priced to cover what is considered to be normal (and even high) use. In addition, Pegasus Imaging 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 Pegasus.

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

For more information on Runtime licensing, see the Pegasus Imaging website for more detailed information regarding Runtimes and Deployment Licensing.


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

License Agreement

Pegasus Imaging Corporation

SOFTWARE LICENSE AGREEMENT

GRANT OF LICENSE

This Pegasus Imaging Corporation ("PEGASUS") Agreement ("License") permits Licensee ("LICENSEE") the 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.

REDISTRIBUTION OF THE TOOLKIT RUNTIMES

PEGASUS does not grant any runtime licenses with the TOOLKIT purchase, except by specific exemptions described on our licensing web pages. For Runtime Licensing information, please visit our web site (http://www.PegasusImaging.com/licensing.htm), or contact our sales staff. Any rights to distribute TOOLKIT run times as part of the LICENSEE's software application or derivative works ("PRODUCT"), require you to acknowledge and uphold this License Agreement and agree to notify PEGASUS immediately of any changes in status or violations. In cases where PEGASUS grants the LICENSEE a right to use, reproduce, display or otherwise distribute or transfer copies of TOOLKIT run times, LICENSEE agrees and affirms the following:

a) LICENSEE is not using PEGASUS' name, logo, or trademarks to market PRODUCT without prior written approval of PEGASUS.

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

c) Only the TOOLKIT run times can be distributed. Distribution of the TOOLKIT development kit, documentation, source code, or the distribution unlock codes, is a violation of this agreement.

d) LICENSEE includes 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.PegasusImaging.com). ALL RIGHTS RESERVED."

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

PEGASUS reserves the right to charge the LICENSEE up to ten times the normal license price for the use of each unlicensed copy of PRODUCT. The license granted herein and all of your rights to use or maintain possession of TOOLKIT shall terminate immediately upon breach of any material provisions of this Agreement.

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.

COPYRIGHT

The Software is owned by PEGASUS or Pegasus Imaging Corporation and is protected by United States copyright laws and international treaty provisions. 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.

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 reverse engineer, decompile or disassemble TOOLKIT.

NO WARRANTY

ANY USE BY LICENSEE OF THE SOFTWARE IS AT THE LICENSEE'S OWN RISK. THE SOFTWARE IS PROVIDED FOR USE ONLY WITH WINDOWS PRODUCTS AND RELATED APPLICATION SOFTWARE AND/OR HARDWARE PRODUCTS. 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 AND NONINFRINGEMENT. PEGASUS IS NOT OBVLIGATED TO PROVIDE ANY UPDATES TO THE SOFTWARE.

NO LIABILITY FOR CONSEQUENTIAL DAMAGES

In no event shall PEGASUS be liable for any damages whatsoever (including, without limitation, incidental, direct, indirect and consequential damages, damages for loss of business profits, 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 or incidental damages, the above limitation may not apply to LICENSEE.

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.

This Agreement is governed by the laws of the State of Florida. 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, 33603.

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@JPG.com.


%%ItemTitle%%

Glossary Item Box

Getting Support and Samples | License Agreement

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Verify You Are 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 a Pegasus Imaging 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 Pegasus, or in C:\Windows\Help.

PegConnect is installed by all component product installers and is accessible through the Windows Start menu:

Start | Programs | Pegasus Imaging | Common | Utilities

PegConnect allows you to:

1) Check with Pegasus Imaging 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 http://www.PegasusImaging.com/latestbuilds.htm.

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

See Also

Getting Support and Samples | License Agreement


%%ItemTitle%%

Glossary Item Box

Trial Mode | Runtime Licensing | Verify You Are Using the Latest Service Pack

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Distributing with Your ActiveX Application

Distributing Barcode Xpress

Check for Proper Licensing and Unlock Codes

Barcode Xpress contains a locking mechanism that does not permit you to distribute applications created with evaluation versions of Barcode Xpress. Prior to distributing an application that utilizes Barcode 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 Files to Distribute

Distribute the appropriate assembly DLL files with applications using the Barcode Xpress Product.

PegasusImaging.ActiveX.BarcodeXpress5.dll - ActiveX component - ActiveX Control for barcode creation and recognition

PegasusImaging.ActiveX.ScanFix5.dll - ActiveX Windows Forms Control (Only required if ScanFix is used for image processing in your application)

PegasusImaging.ActiveX.ImagXpress8.dll - ActiveX Windows Forms Control (Only required if ImageXpress is used for image processing in your application)

See Also

Trial Mode | Runtime Licensing | Verify You Are Using the Latest Service Pack


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Definitions, Acronyms and Abbreviations

Pegasus Imaging Definitions:

PIC: Pegasus Imaging Corporation

Thread-safe: 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.

Industry Terms:

Module Size: a module is the smallest unit in a barcode symbology. In 1D and PDF417 barcodes it is the width of the smallest bar in the barcode pattern. In DataMatrix and QRcode, it is a square area defining one bit of a code word.

Quiet Zone: an area of uniform background surrounding a bar code. If the barcode ink color is black and the background white, then a white region around the barcode is the quiet zone. Quiet zones are required for accurate recognition.

Unicode: a character set that can support a wide range of international characters. Unicode requires 16-bits to encode a character, unlike ASCII, which requires only 8 but supports only a small subset of characters beyond latin.

UI (User Interface): the controls or API provided for user interaction with an application or component.


%%ItemTitle%%

Glossary Item Box

BarcodeInkColor Property | BarcodeOrientation Property | BarcodeType Property | MaxBarcodes Property | What is BarcodeXpress | BC_Edition Enumeration

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Overview

Barcode Detection

Barcode Xpress makes it easy to add barcode detection to your Windows applications. Barcode Xpress automatically detects all barcodes in an image and it gives you complete details about each barcode.
Performance Enhancement: Although Barcode Xpress can automatically detect barcodes in an image, the speed of the detection process can be improved if you have prior knowledge of the type of barcodes you want to detect.

If possible, the following properties should be set before the detection process is started:
  • BarcodeInkColor – The default barcode color is black.
  • BarcodeOrientation – The default barcode orientation is all orientations.
  • BarcodeType – The type of barcodes you want to detect. The default is all 1D barcodes.

See the BarcodeType property for specific identification of barcode types that must be explicitly set to be recognized, and how to speed up barcode detection for known barcode types.

If the barcode image quality is poor (i.e. less than 300 dpi), set the BarcodeType property to the specific barcode type in order to obtain accurate results. See the Debug Your Application for more troubleshooting techniques.

  • MaxBarcodes – Sets the maximum number of barcodes that will be detected. The default is 100.

If you know how many barcodes you expect to find, set the MaxBarcodes to that value, and Barcode Xpress will stop looking once that number is found.

Supports 1D linear barcodes and PatchCode

Show 1D linear barcodes and PatchCode

Add 2

Add 5

Australian Post 4 State Barcode (Error Correcting)

BCD Matrix

Codabar

Code 32

Code 39

Code 39 Extended

Code 93

Code 93 Extended

DataLogic 2 of 5

EAN-128

EAN-13 and JAN EAN-8

IATA 2 of 5

Intelligent Mail

Code 128

Industry 2 of 5

Interleaved 2 of 5

Inverted 2 of 5

Matrix 2 of 5

PatchCode

PostNet

Royal Post 4-State Barcode

UPC-A

UPC-E

2D barcodes

  • The Professional Edition of Barcode Xpress supports reading PDF417, DataMatrix and QRcode barcodes.
  • The Professional plus 2D Write edition includes reading of QRcode and support of PDF417, DataMatrix read and write capabilities.

Show Recognize Barcodes

[Visual Basic]
'load a 1BPP, black and white image into the ImagXpress control
ImagXpress8.FileName = "C:\testbarcodeimage.tif"

'set barcode types to search for (Industry 2 of 5 and Interleaved 2 of 5)
BarcodeXpress5.BarcodeType = 1 + 2

'get DIB handle from ImagXpress
Dim hDib As Long
hDib = ImagXpress8.hDib

'call AnalyzehDib to detect barcodes in image
BarcodeXpress5.AnalyzehDib hDib
'get results
Dim numberBarcodes As Integer
numberBarcodes = BarcodeXpress5.NumBarcodes
If (numberBarcodes > 0) Then
For i = 0 To numberBarcodes
'get results for current barcode
BarcodeXpress5.GetBarcode (i)

'do something with results
MsgBox "Barcode Name: " & BarcodeXpress5.BarcodeCodeName
MsgBox "Barcode Value: " & BarcodeXpress5.BarcodeResult Next End If

Show Barcodes Created

Codabar

Code 39

Code 39 Extended

Code 93

Code 93 Extended

Code 128

DataMatrix

EAN-128

EAN-13

EAN-8

Industry 2 of 5

Interleaved 2 of 5

PatchCode

PDF417

UPC-A

UPC-E

There are only a couple steps required for basic barcode writing.
  1. Setting the barcode value and type to create,
  2. calling the MakeBarcode method,
  3. and getting the resulting image.

[VB]

Show Minimum VB code to write a barcode

using PegasusImaging.ActiveX.BarcodeXpress5;

...

[Visual Basic]
'set the required writer properties
BarcodeXpress5.MakeBarcodeStyle = BC_StyleCode39
BarcodeXpress5.MakeBarcodeValue = "CODE39"

'call MakeBarcode to create barcode
BarcodeXpress5.MakeBarcode

'get the resulting image from MakeBarcodeDIB (or MakeBarcodePic) property
ImagXpress8.hDib = BarcodeXpress5.MakeBarcodeDIB

Barcode Results

Since Barcode Xpress can return multiple barcode results from a single scan, the detected barcode results (both solved and unsolved) will be sorted using the following criteria. Note that all solved barcodes will be ordered before unsolved barcodes.

  1. First, the confidence factor is used to sort the barcode results from highest confidence to lowest.
  2. Next, for any barcodes with the same confidence, they will then be sorted by their location, from top to bottom, then left to right.

Barcode Confidence

All barcode confidence values begin at 100%. You obtain the recognized confidence from the Confidence property.

  • 1D barcodes - Confidence values are decreased as the widths of the bars vary over the barcode.
  • 2D barcodes - Confidence values decrease based on the amount of error correction used in decoding the barcode.
  • Barcodes which use checksums - If a checksum error is detected, the confidence is set to 50%.

Confidence values less than 30% are considered unreadable and any data returned is not considered reliable.

See Also

BarcodeInkColor Property | BarcodeOrientation Property | BarcodeType Property | MaxBarcodes Property | What is BarcodeXpress | BC_Edition Enumeration


%%ItemTitle%%

Glossary Item Box

ChecksumOK Property | BarcodeAppendCheckSum Property | ChecksumCharCount Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Checksums

Barcode Checksums

Checksums are used to verify the correctness of data. Their use is usually in data transmission, or converting data from one form to another. A parity bit is a form of checksum error correction coding. The idea is that the whole unit of data can be identified by a single number, a checksum. And that if the checksum isn't right, it doesn't match and errors have occurred.

The simplest checksum is to add up the value of the individual bytes in the data. Given the data of "CAT", the ASCII values of the letters are 67 + 65 + 84 = 216 and the whole package might be given the notation "CAT(216)". So if we received "CAS(216)" we’d know that an error occurred somewhere along the way.

A simple sum of the characters can be fooled by switching the order but not the value of the data, e.g. "TAC" and "CAT" have the same checksum. So more sophisticated checksum methods have been developed which reduce (but never totally eliminate) the chance of incorrect data giving the correct checksum.

Many types of barcodes employ checksums. In several other types, checksums are optional. Clearly, those that incorporate checksums are more robust and reliable.

Note: The UPC and EAN barcodes always append the checksum character to the barcode results regardless of the BarcodeAppendCheckSum property value.

More advanced barcodes use an error correction system. This allows for reliable reading even if the code has been slightly damaged.

Show Barcodes with no checksum

Add2
Add5
Codabar
DataLogic 2 of 5
Patch Code

Show Barcodes requiring a checksum

Code 128
Code 93
Code 93 Extended
IATA 2 of 5
EAN-128
EAN-13
EAN-8
Intelligent Mail
PostNet
Royal Post 4-State Barcode
UPC-A
UPC-E

Show Barcodes with optional checksum

Code 32
Code 39
Code 39 Extended
Industry 2 of 5
Interleaved 2 of 5
Inverted 2 of 5
BCD Matrix
Matrix 2 of 5

Show Barcodes with error correction

Australian Post 4-State Barcode
PDF417
DataMatrix
QRcode

See Also

ChecksumOK Property | BarcodeAppendCheckSum Property | ChecksumCharCount Property


%%ItemTitle%%

Glossary Item Box

BarcodeResult Property | BarcodeSkew Property | BarcodeX Property | BarcodeX1 Property | BarcodeX2 Property | BarcodeX3 Property | BarcodeX4 Property | BarcodeY Property | BarcodeY1 Property | BarcodeY2 Property | BarcodeY3 Property | BarcodeY4 Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Boundary and Point Properties

When a barcode on an incoming image is detected, Barcode Xpress properties of the results detect the outer parameters of the barcode. They mark both the boundary dimensions and the corner points of the barcode. Height, Width and Area properties describe the boundaries of the barcode rectangle. Barcode Xpress uses x and y properties to identify corner points of the barcode on the image. Coordinate properties x and y locate the corner points of linear 1D Barcodes.

  • When the barcode is in the horizontal orientation, Barcode Xpress reads it from left to right, assigning values to the x1 through x4 and y1 through y4 properties. The BarcodeX1 property is the upper-left corner point of the barcode.
  • The boundary and corner point properties describe a rectangle area for the barcode on the image. The Skew property returns the angle of the barcode.

With any rotation of the barcode on the image, the Point value assigned to the corners rotate with the barcode. No matter what the rotation is, the coordinate properties always identify the same corner point of the barcode. If the barcode is rotated 180 degrees (turn the sample below upside down), the x or y value for the corner remains. BarcodeX1 is now the bottom-right corner; but its value is still 1.

See Also

BarcodeResult Property | BarcodeSkew Property | BarcodeX Property | BarcodeX1 Property | BarcodeX2 Property | BarcodeX3 Property | BarcodeX4 Property | BarcodeY Property | BarcodeY1 Property | BarcodeY2 Property | BarcodeY3 Property | BarcodeY4 Property


%%ItemTitle%%

Glossary Item Box

Checksums | BarcodeType Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Add 2 and Add 5 Barcode Specifications

Add 2 and Add 5 Barcode Specifications Retail barcodes (UPC and EAN) are strictly limited in the amount and format of the data that they encode. Add 2 or Add 5 barcodes give the vendors another two or five digits to identify the specific product, model, or issue. It is usually printed just to the right of the product code. For periodicals, an Add2 often indicates the issue, while other publications include a volume number.

Below is an Add 2 barcode

Below is an Add 5 barcode

See Also

Checksums | BarcodeType Property


%%ItemTitle%%

Glossary Item Box

AustralianPostCustomDecodeMode Property | BC_AustralianPostCustomDecodeType Enumeration

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Australian Post 4-State Barcode

Below is an example of the Australian 4-state Postal Code.

The Australian Post 4 State barcode is a 4 state barcode. It supports four different formats:

    1. Standard
    2. Customer Barcode 2
    3. Customer Barcode 3
    4. Reply Paid Barcode

The Customer Barcodes 2 & 3 include a customer field for encoding data. This barcode also supports the Reed-Solomon error correction scheme.

Format Control Field

The Format Control Field is a 2 digit field identifying the barcode type:

  • 11 - Standard Customer Barcode
  • 59 - Customer Barcode 2
  • 62 - Customer Barcode 3
  • 45 - Reply Paid Barcode

The Customer Barcodes 2 & 3 include a customer field for encoding data. This barcode also supports the Reed-Solomon error correction scheme.

Sorting Code

The Sorting Code is an 8 character sorting code (Delivery Point ID)

Customer Information

There is a free format area available in the Customer Barcodes 2 & 3. This will be decoded using the BC_AustrailianPostCustomDecodeType.

  • If the decode mode is "BarStates", then the output will be either bar state "F" full bar, "T" tracker bar, "A" ascending bar or "D" descending bar.
  • If the decode mode is "TableN" then the output will be decoded using the numeric decoding defined in the Australian Post specification.
  • If the decode mode is "TableC" then the output will be decoded using the character decoding defined in the Australian Post specification.
  • Use the no custom decode if the decode mode has no custom decode type.

Note: If the FCC code is not valid, the confidence will be decreased by 10%.

See Also

AustralianPostCustomDecodeMode Property | BC_AustralianPostCustomDecodeType Enumeration


%%ItemTitle%%

Glossary Item Box

Checksums | IATA 2 of 5 | Industry 2 of 5 | Interleaved 2 of 5 | Inverted 2 of 5 | Matrix 2 of 5

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

BCD Matrix

BCD Matrix is a compact version of 2 of 5 barcodes, but its checking for the data patterns is not as robust. It does include a checksum character. It is not widely used.

See Also

Checksums | IATA 2 of 5 | Industry 2 of 5 | Interleaved 2 of 5 | Inverted 2 of 5 | Matrix 2 of 5


%%ItemTitle%%

Glossary Item Box

MakeBarcodeWidth Property | Checksums | MakeBarcodeBarSize Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Codabar

Codabar is used in libraries, blood banks, the overnight package delivery industry, and a variety of other information processing applications. Codabar is also known as USD-4, NW-7, ABC Codabar, rationalized codabar, and 2 of 7 code.

The Codabar character set includes the digits 0-9, six symbols including: minus "-", plus "+", period ".", dollar sign "$", slash "/", and colon ":", and the following start/stop characters A, B, C and D. The start/stop characters must be used in matching pairs and may not appear elsewhere in the barcode. If you omit the start/stop characters, Barcode Xpress will use A and B respectively. Blood banks use the D stop character to indicate that the next barcode beginning with a D should be concatenated with the current barcode.

Note: By default, the read value of the Codabar barcode does not include the start and stop characters. To include the start and stop characters in the barcode result, the BarcodeIncludeControlCharacters property must be set to True.

Traditional Codabar defines different element width for each of the characters in an effort to make all of the characters have the same width. Rationalized Codabar uses the same patterns, but assigns only 2 element width for wide and narrow.

Barcode Xpress implements Rationalized Codabar. Barcode Xpress generates an error if you have characters in your barcode value that are not allowed.

Codabar requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. Since Codabar is self-checking, there is no standard checksum.

See Also

MakeBarcodeWidth Property | Checksums | MakeBarcodeBarSize Property


%%ItemTitle%%

Glossary Item Box

Code 39

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Code 32

Code 32 is an Italian pharmacy code. It is a variant version of Code 39: it uses the exact same symbol set, stop and start code and rules but restricts the characters that may be encoded to just digits and capital letters excluding the vowels (‘A’, ‘E’, ‘I’, ‘O’, ‘U’). Otherwise it shares all the other advantages of Code 39.

Since Code 32 is a subset of Code 39, Barcode Xpress assumes the barcode is a Code 39 type when detecting all 1D types. The barcode type should be set specifically to Code 32 to read this barcode type correctly.

If you use Barcode Xpress to detect Code 32 barcodes, you should set the BarcodeTypes property to this type so that the barcode engine specifically looks for Code 32. If you don’t tell the barcode engine to specifically look for Code 32 barcodes, it might confuse a Code 32 barcode with a Code 39 barcode.

See Also

Code 39


%%ItemTitle%%

Glossary Item Box

MakeBarcodeBWidth Property | Checksums | BarcodeAppendCheckSum Property | BarcodeType Property | MakeBarcodeBarSize

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Code 39

Code 39 is widely used in many industries across the world. It is the standard for many government barcode specifications, including the U.S. Department of Defense. Code 39 is also known as Code 3 of 9.

Code 39 was the first alphanumeric symbology. Its character set includes the digits 0-9, the letters A-Z (uppercase only), and the following symbols: space, minus "-", plus "+", period ".", dollar sign "$", slash "/", and percent "%". Barcode Xpress generates an error if you have characters in your barcode value that are not allowed.

Each data character is made up of 5 bars and 4 spaces for a total of 9 elements. Each character includes 3 wide and 6 narrow elements. Thus, 3 out of the 9 elements are always wide, which is the reason why the code is sometimes called "3 of 9".

The ratio of wide to narrow bar width can be in the range of 1.8 to 3.4. The Barcode Xpress Code 39 style uses a 2:1 wide to narrow bar width ratio.

Code 39 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. Since Code 39 is a self-checking barcode, it normally does not require a checksum. However, when necessary, an optional modulo 43 checksum may be used.

By default, Barcode Xpress does not write optional checksums. If a checksum is desired for Code 39, set the BarcodeAppendChecksum property to True and Barcode Xpress calculates and writes the checksum.

If you use Barcode Xpress to detect Code 39 barcodes, you should set the BarcodeTypes property to this type so that the barcode engine specifically looks for Code 39. If you don’t tell the barcode engine to specifically look for Code 39 barcodes, it might confuse a Code 39 barcode with a Code 32 barcode.

See Also

MakeBarcodeBWidth Property | Checksums | BarcodeAppendCheckSum Property | BarcodeType Property | MakeBarcodeBarSize


%%ItemTitle%%

Glossary Item Box

BarcodeType property | Code 39 | Checksums | BarcodeAppendCheckSum Property | MakeBarcodeBWidth Property | MakeBarcodeBarSize Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Code 39 Extended

Code 39 Extended was developed to provide a means of encoding additional characters that are not part of the Code 39 character set (for example, lowercase characters and additional symbols), and is essentially a superset of Code 39. Extended characters are encoded by using a pair of normal Code 39 characters. For example, a lowercase "a" is encoded by the character pair "+A". Code 39 Extended supports the full ASCII character set.

The ratio of wide to narrow bar width can be in the range of 1.8 to 3.4. The Barcode XpressCode 39 style uses a 2:1 wide:narrow bar width ratio.

Code 39 Extended requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. Since Code 39 is a self-checking barcode, it normally does not require a checksum. However, when necessary, an optional modulo 43 checksum may be used.

By default, Barcode Xpress will not write optional checksums. If a checksum is desired for Code 39, set the BarcodeAppendCheckSum property to True and Barcode Xpress will calculate and write the checksum.

If you use Barcode Xpress to detect Code 39 barcodes, you should set the reader BarcodeType property to this type so that the barcode engine specifically looks for Code 39. If you don’t tell the barcode engine to specifically look for Code 39 barcodes, it might confuse a Code 39 barcode with a Code 32 barcode.

If you use Barcode Xpress to detect Code 39 barcodes, you should set the BarcodeTypes property to this type so that the barcode engine specifically looks for Code 39. If you don’t tell the barcode engine to specifically look for Code 39 barcodes, it might confuse a Code 39 barcode with a Code 32 barcode.

See Also

BarcodeType property | Code 39 | Checksums | BarcodeAppendCheckSum Property | MakeBarcodeBWidth Property | MakeBarcodeBarSize Property


%%ItemTitle%%

Glossary Item Box

MakeBarcodeWidth Property | MakeBarcodeBarSize Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Code 93

Code 93 is a bar code symbology which encodes 43 data characters (0-9, A-Z, 6 symbols, and Space), four shift characters, and a unique start/stop character. Code 93 derives its name from the fact that every character is constructed from 9 modules arranged into 3 bars with their adjacent spaces.

The Code 93 character set includes the digits 0-9, the letters A-Z (uppercase only), and the following symbols: space, minus "-", plus "+", period ".", dollar sign "$", slash "/", and percent "%". Barcode Xpress will generate an error if you have characters in your barcode value that are not allowed.

Code 93 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. Code 93 requires two checksum characters, sometimes referred to as the “C” and “K” characters.

See Also

MakeBarcodeWidth Property | MakeBarcodeBarSize Property


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Code 93 Extended

Similar to Code 39 Extended, Code 93 Extended is a superset of Code 93. Extended characters are encoded by using a pair of Code 93 characters. For example, a lowercase "a" is encoded by the character pair "+A". The difference in Code 93 Extended, when compared to Code 39 Extended, is that the shift character used to encode an extended character is a reserved character, and not one of the standard 43 characters in the Code 93 character set. Code 93 Extended supports the full ASCII character set.

Code 93 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. Code 93 requires two checksum characters, sometimes referred to as the “C” and “K” characters.


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Code 128 and EAN 128

Code 128 provides excellent density for all-numeric data and good density for alphanumeric data. The symbol can be as long as necessary to store the encoded data. It is often selected over Code 39 in new applications because of its density and because it offers a much larger selection of characters. Code 128 is designed to encode all 128 ASCII characters.

A Code 128 can actually be divided into three subsets A, B and C. There are three separate start codes to indicate which subset is being used. In addition, each subset includes control characters to switch to another subset in the middle of a barcode.

  • A – Digits, uppercase characters, standard ASCII symbols and control codes.
  • B – Digits, upper and lower case characters, standard ASCII symbols and control codes.
  • C – Numeric only. Compresses two numeric digits into each character, providing excellent density. Barcode Xpress will add a leading "0" if there are an odd number of digits in the code.

When the BarcodeType property is set to write a Code 128 barcode, Barcode Xpress will automatically switch between the three character sets (A, B and C) to code the data in the shortest form.

  • EAN-128 – The UCC/EAN 128 barcode is a special form of Code 128. EAN-128 is based on Code 128 but it has a double start character.

Barcode Xpress will generate an error, if you have characters in your barcode value that are not allowed.

Each character is 11 times the width of the most narrow bar. Each character consists of 3 bars and 3 spaces. The bars always use an even number of elements and the spaces use an odd number. This provides the basis for a character-by-character consistency check during scanning. In addition, each Code 128 barcode includes a Modulo 103 checksum.

Code 128 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels.


%%ItemTitle%%

Glossary Item Box

Checksums | IATA 2 of 5 | Industry 2 of 5 | Interleaved 2 of 5 | Inverted 2 of 5

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

DataLogic 2 of 5

DataLogic 2 of 5 is a variation of the 2 of 5 barcodes using both white and black bars. It does not have a checksum character. It is not widely used.

See Also

Checksums | IATA 2 of 5 | Industry 2 of 5 | Interleaved 2 of 5 | Inverted 2 of 5


%%ItemTitle%%

Glossary Item Box

MakeBarcode Method | SetMakeBarcodeDataValue Method | MakeBarcodeValue Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Data Matrix

DataMatrix is a widely used true 2D barcode. It allows for encoding large amounts of information (over 3000 characters) using a variety of character sets (ASCII, C40, TEXT and BASE256) allowing efficient data packing or binary data storage as needed. DataMatrix employs an error correction system allowing it to read codes that are as much as 40% damaged.

Barcode Xpress supports the ECC 200 standard. It does not support the ECC 100-140 standards. Barcode Xpress does not support the automatic structured append feature. It returns results of each barcode, but the individual results have to be combined.

Performance Enhancement: Barcode Xpress is designed to optimize speed for the DataMatrix barcode recognition type as it takes advantage of the SSE2 (Streaming SIMD Extensions) technology provided in some computer processors with the initial release of the Pentium 4 architecture. This SSE2 technology allows for more efficient pixel processing, significantly improving image recognition time. Computer processors not supporting SSE2 will not provide this performance enhancement, and will automatically use the same processing algorithm as all prior releases.

An example DataMatrix barcode:

The Professional plus 2D Write edition supports creating PDF417 and DataMatrix barcodes which can then be written using the ImagXpress control or by writing to a Printer Device Context. Your application logic will set the barcode writing parameters and make a call to the MakeBarcode method. The output image will then be returned in the call.

Included features to use with this functionality are:

  • MakeBarcodeStyle - The type of barcode to create.
  • MakeBarcodeDataValueLength - Gets the length of the current barcode data in bytes.
  • MakeBarcodeRows - This value is used to set the number of rows.
  • MakeBarcodeRowsCreated - The number of rows created.
  • MakeBarcodeColumns - This value is used to set the number of columns to create.
  • MakeBarcodeColumnsCreated - The number of columns created.
  • MakeBarcodeRHeight - An output height value is required to create the barcode image.
  • MakeBarcodeRWidth - An output width value is required to create the barcode image.

Caution: When using trial (unpaid) licensing, the words " UNLICENSED www.jpg.com " will appear in the middle of every DataMatrix and PDF417 barcode created, taking up 24 bytes of space including the leading and trailing spaces. When testing the contents of generated barcodes, be aware of the extra space requirements.

Caution: An anomaly has been identified for DataMatrix 144 x 144 barcodes written by several competitors' components. For this size only, barcodes created using those components do not adhere to the DataMatrix barcode specification. Because Pegasus Imaging does adhere to the DataMatrix specification, those competitors' components will not correctly read 144 x 144 size DataMatrix written by Barcode Xpress.

When reading 144 x 144 DataMatrix barcodes, Barcode Xpress will assume that the barcodes adhere to the specification. If reading fails, the component will automatically attempt to apply the recognition algorithm that will work on barcodes written by the competitors components, and report the results. The barcode reader will not be notified that the barcode did not adhere to the specification. For these barcodes only, recognition speed will be impacted.

See Also

MakeBarcode Method | SetMakeBarcodeDataValue Method | MakeBarcodeValue Property


%%ItemTitle%%

Glossary Item Box

UPC-A | UPC-E | Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

EAN-8

The EAN (European Article Numbering) code is primarily used in supermarkets. EAN-8 is a shortened version of the EAN-13 code. It is a numeric-only code that includes a 2 or 3 digit country code, 4 or 5 data digits (depending on the length of the country code), and a checksum digit that is automatically added by Barcode Xpress.

Unlike the UPC-E symbol, which compresses data that could also be printed as a full-size UPC-A symbol by squeezing out zeros, the data digits in an EAN-8 symbol specifically identify a particular product and manufacturer. Since a limited number of EAN-8 codes are available in each country, they are issued only for products with insufficient space for a normal EAN-13 symbol.

Barcode Xpress will generate an error if you have characters in your barcode value that are not allowed. You can have 7 or 8 digits in the EAN-8 barcode value. You don’t have to include the 8th digit (checksum) since Barcode Xpress automatically adds it.

EAN-8 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels.

The EAN-8 barcode is also commonly written with 2 different bar heights. Typically, the height of the left and right guard bars are greater than the height of the bars encoding the actual barcode value, essentially creating a notch in the barcode where the text value can be written. SmartScan Xpress Barcode provides the user with control over the size of this notch with the MakeBarcodeUPCNotchPercent property.

The MakeBarcodeUPCNotchPercent property can be set to a value of 0 to 50. This number represents the percentage of the tall bar height the short bars will be shortened by. For example, if the notch percent is 10, and the bar height is set to 100 pixels, the tall bars (left and right guard bars) will be 100 pixels tall, and the short bars (bars encoding the value) will be 90 pixels tall.

See Also

UPC-A | UPC-E | Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property


%%ItemTitle%%

Glossary Item Box

Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

EAN-13 and JAN

EAN-13 is used worldwide for marking retail goods. The symbol is numeric-only and encodes 13 digits. The first two or three digits are a country code which identify the country in which the manufacturer is registered (not necessarily where the product is actually made). The country code is followed by 9 or 10 data digits (depending on the length of the country code) and a single checksum digit that is automatically added by Barcode Xpress. There is a special form of EAN-13, called EAN-99 which just starts with "99".

Note: The JAN barcode is identical to the EAN-13 except with a country code of 49, designating that it was registered in Japan. The JAN barcode is treated exactly the same as the EAN-13 for reading and writing barcodes within Barcode Xpress.

As of January 1, 2005, all retail scanning systems in the United States must be able to accept the EAN-13 symbol as well as the standard UPC-A symbol. The United States has begun the process of moving to the EAN-13 symbol, which will be known as the UPC-13 symbol in the USA.

Barcode Xpress generates an error if you have characters in your barcode value that are not allowed. You can have 12 or 13 digits in the EAN-13 barcode value. You don’t have to include the 13th digit (checksum) since Barcode Xpress automatically adds it.

EAN-13 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels.

The EAN-13 barcode is also commonly written with 2 different bar heights. Typically, the height of the left, center and right guard bars are greater than the height of the bars encoding the actual barcode value, essentially creating a notch in the barcode where the text value can be written. Barcode Xpress provides the user with control over the size of this notch with the MakeBarcodeUPCNotchPercent property.

The MakeBarcodeUPCNotchPercent property can be set to a value of 0 to 50. This number represents the percentage of the tall bar height the short bars will be shortened by. For example, if the notch percent is 10, and the bar height is set to 100 pixels, the tall bars (left, center and right guard bars) will be 100 pixels tall, and the short bars (bars encoding the value) will be 90 pixels tall.

See Also

Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property


%%ItemTitle%%

Glossary Item Box

BarcodeAppendCheckSum | Checksums | Industry 2 of 5

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

IATA 2 of 5

This is a numeric only code used by the Airline industry, and is a variation of Industrial 2 of 5. This barcode is also known as Airline 2 of 5.

Since IATA 2 of 5 requires a checksum, you must set the BarcodeAppendCheckSum property to true and Barcode Xpress will calculate and write the checksum.

See Also

BarcodeAppendCheckSum | Checksums | Industry 2 of 5


%%ItemTitle%%

Glossary Item Box

Checksums | BarcodeAppendCheckSum Property | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Industry 2 of 5

Industry 2 of 5 barcodes have been in use since the late 1960’s for airline tickets, photo developing envelopes and warehouse sorting systems.

Industry 2 of 5 encodes all of the information in the bars. The spaces are fixed width and are used only to separate the bars. Consequently, it is a fairly inefficient code in terms of how much space is required to encode a single digit.

  • Since Industry 2 of 5 is a numeric-only code, Barcode Xpress generates an error if the barcode value contains characters that are not numeric. Industry 2 of 5 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels.
  • Since Industry 2 of 5 is a self-checking barcode, it normally does not require a checksum. However, when necessary, an optional modulo 10 checksum may be used. By default, Barcode Xpress will not write optional checksums. If a checksum is desired for Industry 2 of 5, set the BarcodeAppendCheckSum property to True and Barcode Xpress will calculate and write the checksum.

See Also

Checksums | BarcodeAppendCheckSum Property | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property


%%ItemTitle%%

Glossary Item Box

Checksums | PostNet

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Intelligent Mail

The Intelligent Mail Barcode is also known as the USPS OneCode Solution or UPS 4-State Customer Barcode (abbreviated 4CB, 4-CB, or USPS4CB). This barcode is adopting a new 4-state 1D barcode that includes more address information than the current code. A sample is shown below. Further information can be found at the USPS (United States Postal Service) Web site: http://ribbs.usps.gov/onecodesolution/.

The Intelligent Mail barcode combines information currently found in the PostNet and Planet barcodes. The length of the barcode is fixed at 65 bars. It also contains a CRC-Checksum for verifying the barcode value. There is no error correction. The output of the barcode is a 20, 25, 29 or 31 digit string (0, 5, 9 or 11 digit zip code) containing the following data:

(© USPS-B-3200,Pages 4-5,file:SPUSPS-B3200B001.pdf)

Statistics

The Mailer ID is a field within the Intelligent Mail barcodes that is used to identify Mail Owners and/or Mailing Agents. The IDs are assigned by the USPS to each Mail Owner and/or Mailing Agent that requests them. A Mailer ID can be a 9-digit field or a 6-digit field. The USPS assigns 6-digit or 9-digit Mailer IDs based upon the mail volume of the mailer.

  • The barcode identifier is a 2 digit field assigned by the USPS. The first digit ranges from 0-9 and the second digit ranges from 0-4.

Note: All 6-digit MIDs (Mailer IDs), assigned by USPS will begin with 0 through 8. All 9-digit MIDs will begin with the number 9.

  • Special services include a 3 digit field assigned by the USPS for any special services which range from 000-999.
  • The customer identifier is a 6 digit field assigned by the USPS and is unique for each customer. The range is from 000000000-999999999.
  • The sequence number is a 9 digit field assigned by the mailer for tracking mail pieces which range from 000000000-999999999.
  • The zip code is a 0, 5, 9, or 11 digit zip code which range from none, 00000-99999, 000000000-999999999, 00000000000-99999999999.
See Also

Checksums | PostNet


%%ItemTitle%%

Glossary Item Box

Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Interleaved 2 of 5

Interleaved 2 of 5 is a numeric-only barcode that is widely used in warehouse and industrial applications.

The symbol can be as long as necessary to store the encoded data. The code is a high-density code.

The symbol is called "Interleaved" because a digit is encoded in the bars and the next digit is encoded in the spaces. There are five bars, two of which are wide; and five spaces, two of which are wide. Since the characters are interleaved in pairs, the barcode has to contain an even number of digits. If the barcode value contains an odd number of digits, Barcode Xpress adds a leading "0" to the value.

Interleaved 2 of 5 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. Since Interleaved 2 of 5 is a self-checking barcode, it normally does not require a checksum. However, when necessary, an optional modulo 10 checksum may be used. By default, Barcode Xpress will not write optional checksums. If a checksum is desired for Interleaved 2 of 5, set the BarcodeAppendCheckSum property to True and Barcode Xpress calculates and writes the checksum.

See Also

Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property


%%ItemTitle%%

Glossary Item Box

Industry 2 of 5 | Checksums

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Inverted 2 of 5

Inverted 2 of 5 is similar to Industry 2 of 5, except the data is encoded in the white bars. It is not widely used.

See Also

Industry 2 of 5 | Checksums


%%ItemTitle%%

Glossary Item Box

Checksums | DataLogic 2 of 5

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Matrix 2 of 5

Matrix 2 of 5 is similar to DataLogic 2 of 5 with a checksum character. It is not widely used.

See Also

Checksums | DataLogic 2 of 5


%%ItemTitle%%

Glossary Item Box

BarcodeType Property | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | Checksums

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Patch Code

Barcode Xpress supports the following patch codes:

  • Patch I
  • Patch II
  • Patch III
  • Patch IV
  • Patch VI
  • Patch T

To write a Patch Code using Barcode Xpress, set the writer BarcodeType property to PatchCode, then set the writer MakeBarcodeValue property to a value of 1 through 6.

Patch Codes require a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels. There is no checksum for Patch Code.

See Also

BarcodeType Property | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | Checksums


%%ItemTitle%%

Glossary Item Box

MakeBarcode Method | GetMakeBarcodeDataValue Method | SetMakeBarcodeDataValue Method

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

PDF417

PDF417 is often referred to as a stacked 1D barcode. Like DataMatrix it uses an error correction scheme and allows for encoding binary data.

An example PDF417:

If using the Professional plus 2D Write edition, 2D writes are supported for PDF417 using an external application. Typically this can be done using the ImagXpress control or by writing to a Printer Device Context. The external application will set the barcode writing parameters and make a call to the MakeBarcode method. The output image will then be available in the image properties.

Included features to use for this functionality are:

  • MakeBarcodeStyle - The type of barcode to create.
  • MakeBarcodeDataValueLength - Gets the length of the current barcode data in bytes.
  • MakeBarcodeHeight - PDF417 uses this value as a multiplier of the minimum barcode width to set the row module height.
  • MakeBarcodeRows - This value is used to set the number of rows.
  • MakeBarcodeRowsCreated - The number of rows created.
  • MakeBarcodeColumns - This value is used to set the number of columns to create.
  • MakeBarcodeColumnsCreated - The number of columns created.
  • MakeBarcodeErrorCorrectionLevel - This value is used for the amount of error correction to add to a barcode which supports selected error correction level.
  • MakeBarcodeErrorCorrectionLevelUsed - The value from the error correction level created.
  • MakeBarcodeRHeight - An output height value is required to create the barcode image.
  • MakeBarcodeRWidth - An output width value is required to create the barcode image.
  • GetMakeBarcodeDataValue - Gets the barcode value as an array of bytes.
  • SetMakeBarcodeDataValue - Used to set the barcode value as an array of bytes.

Caution: When using trial (unpaid) licensing, the words "UNLICENSED www.jpg.com" will appear in the middle of every DataMatrix and PDF417 barcode created, taking up 24 bytes of space. When testing the contents of generated barcodes, be aware of the extra space requirements.

See Also

MakeBarcode Method | GetMakeBarcodeDataValue Method | SetMakeBarcodeDataValue Method


%%ItemTitle%%

Glossary Item Box

Checksums

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

PostNet

Specific to the US Postal Service is the PostNet (Postal Numeric Encoding Technique) examples can be found on of mail in the United States. Unique in that it varies the height instead of the width of the bars. Except for the start and end bars they are in groups of five with two long, three short. A PostNet can encode five, nine, or eleven digits, nothing else. It includes a checksum.

See Also

Checksums


%%ItemTitle%%

Glossary Item Box

Checksums

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

QRcode

QR code is one of very few barcode types that allow encoding of Kanji and Kana.

Statistics

  • The symbol size of the QRcode is 21 x 21 modules to 177 x 177 modules corresponding to Version 1-40, increasing in steps of 4.
  • The numeric data is maximum capacity 7089 digits.
  • The alphanumeric data maximum capacity is 4296 characters.
  • The byte data maximum capacity is 2953 bytes.
  • The Kanji data maximum capacity is 1817 characters.

Error Correction Level

This barcode type uses a Reed-Solomon error detection and correction scheme. There are four levels of error correction, each with increasing amount of error recover. Note: The higher the error level, the less data that can be stored in the barcode.

  • "L" - 7% error recovery
  • "M" - 15% error recovery
  • "Q" - 25% error recovery
  • "H" - 30% error recovery
See Also

Checksums


%%ItemTitle%%

Glossary Item Box

BarcodeType Property | BC_BarcodeStyle Enumeration

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Royal Post 4-State Barcode

The United Kingdom has implemented a new 4-state barcode referred to as the Royal Mail 4-State Customer Code (RM4SCC).

An example is shown below:

This barcode type is used by the United Kingdom Royal Post. It encodes 5, 6, or 7 character post codes along with a two character Delivery Point Suffix (DPS). A checksum character is included to verify the barcode read.

See Also

BarcodeType Property | BC_BarcodeStyle Enumeration


%%ItemTitle%%

Glossary Item Box

Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property | EAN-13 and JAN

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

UPC-A

The UPC-A code is the standard version of the UPC code and has 12 digits. It is also called UPC-12 and is very similar to the EAN code. The UPC-A code is a numeric code, which is able to display digits from 0 to 9. Each character consists of two lines and two spaces.

UPC-A encodes 12 digits. The first digit of the UPC-A code indicates what the code contains as follows:

0. Regular UPC code

1. Reserved

2. Articles where the price varies by weight: for example meat.

3. National Drug Code (NDC) and National Health Related Items Code (HRI)

4. UPC code which can be used without format restrictions. For use in-store on non-food items 5. Coupons

6. Reserved

7. Regular UPC code

8. Reserved

9. Reserved

The second to sixth digits indicate the producer of the article (UPC ID number). This number is issued by the Uniform Code Council (UUC). The seventh to eleventh digits show the individual article number issued by the producer. The last digit is a Modulo 103 checksum digit, which is calculated by Barcode Xpress.

The height of the UPC-A symbol should be at least half of the length of the symbol.

Barcode Xpress generates an error if you have characters in your barcode value that are not allowed. You can have 11 or 12 digits in the UPC-A value. You don’t need to include the 12th digit (checksum) since Barcode Xpress calculates it anyway.

UPC-A requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels.

The UPC-A barcode is also commonly written with 2 different bar heights. Typically, the height of the left, center and right guard bars are greater than the height of the bars encoding the actual barcode value, essentially creating a notch in the barcode where the text value can be written. Barcode Xpress provides the user with control over the size of this notch with the MakeBarcodeUPCNotchPercent property.

The MakeBarcodeUPCNotchPercent property can be set to a value of 0 to 50. This number represents the percentage of the tall bar height the short bars will be shortened by. For example, if MakeBarcodeUPCNotchPercentis 10, and the bar height is set to 100 pixels, the tall bars (left, center and right guard bars) will be 100 pixels tall, and the short bars (bars encoding the value) will be 90 pixels tall.

If you use Barcode Xpress to detect UPC-A barcodes, you should set the BarcodeType property to this barcode type so that the barcode engine specifically looks for UPC-A. If you don’t tell the barcode engine to specifically look for UPC-A barcodes, it might confuse a UPC-A barcode with a EAN-13 barcode.

See Also

Checksums | MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property | EAN-13 and JAN


%%ItemTitle%%

Glossary Item Box

MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property | Checksums

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

UPC-E

UPC-E is a variation of the UPC-A symbol that is used for number system 0. The UPC-E code is a numeric-only code which is able to display digits from 0 to 9. UPC-E has 8 digits, where the last digit is a checksum digit automatically added by Barcode Xpress. The first digit is always "0" and it is also automatically added by Barcode Xpress.

The UPC-E code is a compressed barcode which is intended for use on small items. Compression works by squeezing extra zeros out of the barcode and then automatically re-inserting them at the scanner. Only barcodes containing zeros are candidates for the UPC-E symbol.

Barcode Xpress generates an error if you have characters in your barcode value that are not allowed. You can have 6, 10, 11 or 12 digits in the UPC-E value. If the barcode value has more than 6 digits, Barcode Xpress automatically compresses the value. There are four rules that determine what UPC codes can be created using the compressed UPC-E format:

  • If the last 3 digits of the manufacturer’s number are 000, 100, or 200, the valid product code numbers are 00000-00999 (1,000 numbers).
  • If the last 3 digits of the manufacturer’s number are 300, 400, 500, 600, 700, 800, or 900, the valid product code numbers are 00000-00099 (100 numbers).
  • If the last 2 digits of the manufacturer’s number are 10, 20, 30, 40, 50, 60, 70, 80 or 90, the valid product code numbers are 00000-00009 (10 numbers).
  • If the manufacturer’s number does not end in zero, the valid product code numbers are 00005-00009 (5 numbers).

UPC-E requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MakeBarcodeBarSize property to 3 pixels (narrow bar size), you should set the MakeBarcodeBWidth property to 30 pixels.

The UPC-E barcode is also commonly written with 2 different bar heights. Typically, the height of the left and right guard bars are greater than the height of the bars encoding the actual barcode value, essentially creating a notch in the barcode where the text value can be written.

Barcode Xpress provides the user with control over the size of this notch with the MakeBarcodeUPCNotchPercent property. The MakeBarcodeUPCNotchPercent property can be set to a value of 0 to 50. This number represents the percentage of the tall bar height the short bars will be shortened by.

For example, if TextNotchPercent is 10, and the bar height is set to 100 pixels, the tall bars (left and right guard bars) will be 100 pixels tall, and the short bars (bars encoding the value) will be 90 pixels tall.

See Also

MakeBarcodeBarSize Property | MakeBarcodeBWidth Property | MakeBarcodeUPCNotchPercent Property | Checksums


%%ItemTitle%%

Glossary Item Box

Recognize a Barcode | Debug Your Application | Access Results | Overview

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Acquire an Image for Barcode Recognition

Image Options

Barcode Xpress works with 1-bit black and white images. To convert color or grayscale image to 1-bit, use the ImagXpress ColorDepth method or other methods with the included ImagXpress component. For applications requiring image thresholding, superior results may be obtained by using the Binarize method in ScanFix Bitonal edition, or the Binarize method in ImagXpress Document edition. Each of these options may be purchased for an upgrade fee.

Checks before Barcode Recognition

If possible, the following properties should be set before the detection process is started:
  • BarcodeInkColor – The default barcode color is black.
  • BarcodeOrientation – The default barcode orientation is BC_OrientationBoth.
  • BarcodeType – The type of barcodes you want to detect. The default is all 1D barcodes.

See the BarcodeTypes property for specific identification of barcode types that must be explicitly set to be recognized, and how to speed up barcode detection for known barcode types.

If the barcode image quality is poor (i.e. less than 300 dpi), set the BarcodeTypes property to the specific barcode type in order to obtain accurate results.
  • MaxBarcodes – Sets the maximum number of barcodes that will be detected. The default is 100.

If you know how many barcodes you expect to find, set the MaxBarcodes to that value, and Barcode Xpress v5 will stop looking once that number is found.

See the Recognize a Barcode topic for information on recognition.

See the Overview topic for code examples on acquiring barcodes.

See Also

Recognize a Barcode | Debug Your Application | Access Results | Overview


%%ItemTitle%%

Glossary Item Box

Acquire an Image for Barcode Recognition | Access Results | Overview

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Recognize a Barcode

Once your image has been acquired, pre-image processing has been performed, and properties are set appropriately as per the Acquire an Image topic, you are ready to recognize the barcode on the image.

Barcode Xpress automatically detects all barcodes in an image and gives you complete details about it.

If you know which barcodes you want to recognize, setting the ReaderAreaHeight, ReaderAreaWidth, ReaderAreaX and ReaderAreaY values to define a smaller rectangular area on your image will speed up processing. By default these values are set to 0 which tells Barcode Xpress to search the entire image automatically.

Supported Barcodes for Recognition

Barcodes supported for recognition are listed in the Overview. The edition you have enabled will determine exact barcodes. To modify editions, see theTrial Mode | Changing BarcodeXpress Edition topic for more information.

Once the BarcodeType has been determined as stated in the Acquire Image topic, use the following methods and properties to recognize the barcode.

Methods

  • AnalyzehDib - This method detects a barcode within the given DIB.
  • AnalyzeIPicture - This method detects a barcode within the given Picture.

Properties

  • BarcodeInkColor - This property gets and sets the ink color of barcodes to search for in recognition.
  • BarcodeOrientation - This property gets and sets the orientation of barcodes to search for in recognition.
  • BarcodeType - This property gets and sets the type of barcodes to search for during recognition.
  • MaxBarcodes - This property gets and sets the maximum number of barcodes to recognize.
  • Picture - This property gets and sets a bitmap for use in barcode recognition.
  • ReaderAreaHeight - This property gets and sets the height of the area for the recognition engine to analyze.
  • ReaderAreaWidth - This property gets and sets the width of the area for the recognition engine to analyze.
  • ReaderAreaX - This property gets and sets the x coordinate of the area for the recognition engine to analyze.
  • ReaderAreaY - This property gets and sets the y coordinate of the area for the recognition engine to analyze.

See the Overview topic for code examples on recognizing barcodes.

To obtain the results after analyzing the barcode on an image, See the Access Results topic.

See Also

Acquire an Image for Barcode Recognition | Access Results | Overview


%%ItemTitle%%

Glossary Item Box

Acquire an Image for Barcode Recognition | Recognize a Barcode | Overview

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Access Results

Get Barcode Results

Methods

  • GetBarcode - This method returns the result properties with data of the given barcode index.
  • GetBarcodeResultDataValue - This method gets the BarcodeResult as an array of bytes.
  • GetMakeBarcodeDataValue - This method returns the barcode value as an array of bytes.

Properties

  • BarcodeResult - This property gets the string value of the recognized barcode.
  • Confidence - This property gets the confidence of the barcode that was recognized.
  • BarcodeCodeName - This property gets the name of the recognized barcode.
  • BarcodeOrientation - This property gets and sets the orientation of barcodes to search for in recognition.
  • BarcodeH - This property gets the height of the image area of the recognized barcode.
  • BarcodeW - This property gets the width of the image area of the recognized barcode.
  • BarcodeAppendCheckSum - This property gets and sets a value which determines if a check sum value is appended to the barcode during recognition.
  • BarcodeResultStyle - This property gets the numeration type of the recognized barcode.
  • BarcodeSkew - This property gets the angle of the recognized barcode.
  • ChecksumCharCount - This property gets the number of characters in the recognized checksum.
  • ChecksumOK - This property gets a check if there is a valid checksum value for the recognized barcode.
  • NumBarcodes - This property gets the number of barcodes recognized.

Order of Results

Since Barcode Xpress can return multiple barcode results from a single scan, the detected barcode results (both solved and unsolved) will be sorted using the following criteria. Note that all solved barcodes will be ordered before unsolved barcodes.

  1. First, the confidence factor is used to sort the barcode results from highest confidence to lowest. The Confidence property gets the confidence of the barcode that was recognized.
  2. Next, for any barcodes with the same confidence, they will then be sorted by their location, from top to bottom, then left to right.

Example code to get multiple barcode results in VB

...

'Sort the results top to bottom
Dim BarcodeArray() As BarcodeInfo
ReDim BarcodeArray(0 To BarcodeXpress5.NumBarcodes - 1)
' fill the user type array
For i = 0 To BarcodeXpress5.NumBarcodes - 1
BarcodeXpress1.GetBarcode i
BarcodeArray(i).CodeName = BarcodeXpress5.BarcodeCodeName
BarcodeArray(i).result = BarcodeXpress5.BarcodeResult
BarcodeArray(i).CheckSumOK = BarcodeXpress5.CheckSumOK
BarcodeArray(i).Confidence = BarcodeXpress5.Confidence
BarcodeArray(i).Length = BarcodeXpress5.ResultLen
BarcodeArray(i).X = BarcodeXpress5.BarcodeX
BarcodeArray(i).Y = BarcodeXpress5.BarcodeY
BarcodeArray(i).H = BarcodeXpress5.BarcodeH
BarcodeArray(i).W = BarcodeXpress5.BarcodeW
Next i
' actual sort results top to bottom
Dim temp As BarcodeInfo
For i = UBound(BarcodeArray) - 1 To 0 Step -1
For j = 0 To i
If BarcodeArray(j).Y > BarcodeArray(j + 1).Y Then
temp = BarcodeArray(j + 1)
BarcodeArray(j + 1) = BarcodeArray(j)
BarcodeArray(j) = temp
End If
Next
Next

'Result = "Analyze Time: " & (endtime - startTime) / 1000 & " sec." & vbNewLine
result = vbNewLine & "Analyze Time: " & dblResult & " sec." & vbNewLine
result = result & BarcodeXpress5.NumBarcodes & " barcode(s) found." & vbNewLine
result = result & "Sorted top to bottom." & vbNewLine & vbNewLine
For i = 0 To UBound(BarcodeArray)
BCResult = ""
result = result & "Symbol #" & i & vbNewLine & "Type - " & BarcodeArray(i).CodeName & vbNewLine
result = result & "X - " & BarcodeArray(i).X & " pixels" & vbNewLine & "Y - " & BarcodeArray(i).Y & " pixels" & vbNewLine
result = result & "W - " & BarcodeArray(i).W & " pixels" & vbNewLine & "H - " & BarcodeArray(i).H & " pixels" & vbNewLine
result = result & "Length: " & BarcodeArray(i).Length & vbNewLine

result = result & "Confidence:" & BarcodeArray(i).Confidence & vbNewLine
result = result & "Value:" & vbNewLine & BarcodeArray(i).result & vbNewLine & vbNewLine
BCResult = BCResult & BarcodeArray(i).result
If (BarcodeXpress1.CheckSumOK) Then
result = result & "Checksum OK" & vbNewLine
End If
result = result & vbNewLine & vbNewLine
frmIXP.img.DrawFillStyle = FILL_Transparent
frmIXP.img.DrawLine BarcodeArray(i).X, BarcodeArray(i).Y, BarcodeArray(i).X + BarcodeArray(i).W, BarcodeArray(i).Y + BarcodeArray(i).H, RGB(0, 0, 0), True, False
frmIXP.img.DrawFillColor = RGB(255, 255, 255)
frmIXP.img.DrawFillStyle = FILL_Solid
BCResult = "Symbol #" & i & " - " & BCResult
frmIXP.img.DrawLine BarcodeArray(i).X + 2, BarcodeArray(i).Y + 2, BarcodeArray(i).X + 2 + (frmIXP.TextWidth(BCResult)) / Screen.TwipsPerPixelX, BarcodeArray(i).Y + 2 + (frmIXP.TextHeight("Symbol")) / Screen.TwipsPerPixelY, RGB(255, 255, 255), True, True
frmIXP.img.DrawTextString BarcodeArray(i).X + 2, BarcodeArray(i).Y + 2, BCResult, RGB(0, 0, 0)
Next i

See the Overview topic for code examples on recognition results.

See Also

Acquire an Image for Barcode Recognition | Recognize a Barcode | Overview


%%ItemTitle%%

Glossary Item Box

Debug Your Application | Overview

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Create a Barcode

Basic Steps to Create a Barcode

  • Set the barcode value and type you want to create

MakeBarcodeValue - This property uses a string as a valid value for the specified barcode type to create.

MakeBarcodeStyle - This property gets and sets the type of barcode to create.

  • Call the MakeBarcode method to create a barcode

MakeBarcode - This method creates a barcode determined by the previously set properties defined above.

  • Get the resulting image

MakeBarcodePic - This property returns a handle to the barcode (DIB) Device Independent Bitmap.

MakeBarcodeDIB - This property returns the barcode picture.

See the Overview topic for code examples on writing barcodes.

Barcode Xpress provides many additional methods and properties to use in barcode creation. See the Pegasus Imaging BarcodeXpress v5.0 topic for API information on methods and properties.

See Also

Debug Your Application | Overview


%%ItemTitle%%

Glossary Item Box

Getting Support and Samples

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Debug Your Application

Because debugging and writing debug information to a log file is time consuming and expensive, Barcode Xpress provides the ability to control the level of information written to the debug log as well as the ability to turn off writing to a file completely.

Use the objects below to adjust the settings of your debugging, event handling, memory and IDispose for optimal performance.

Control Debugging Information

  • Debug - Turns on or off the ability to write to the debug log file.
  • DebugLogFile - A filename which stores the debug log information.
  • ErrorLevel - Controls the amount of information that is written to the debug log file.

Note: When ErrorLevel is set to Detailed, Barcode Xpress will log most of your calls to the component including the occurrence of exceptions, the result of most major operations and the operation of each event it raises.

Troubleshooting

  • Color or Grayscale Images - Barcode Xpress works with 1-bit black and white images. To convert color or grayscale images to 1-bit, use the ColorDepth or other methods with the included ImagXpress component. (In some situations better results may be obtained using the Binarize method, available in both the ScanFix Xpress Bitonal edition and ImagXpress Document edition. Contact sales@jpg.com for pricing information).
  • Due to poor image quality, not able to read Barcodes when you know they exist - There is no set process for cleanup of images. Since literally a single pixel may make a difference for recognition results, what may work on one image for clean-up, may not work on another. The included ScanFix component offers many different clean-up operations including SmoothandZoom, Dilation, and Erosion which all assist in recognition of the barcodes, but there is no set order in which to perform these operations that will ensure each image barcode will be detected. All ScanFix Xpress cleanup operations are very fast, so an option to consider is performing multiple operations and then retrying recognition.
  • Issues with barcode recognition - Some reasons why your barcode may not be detected could be due to poor resolution, resolutions of horizontal and vertical are not the same (such as a faxed image), the barcode wasn't made correctly according to the standard, bad scanning quality, bad image quality (see bullet two above), or the barcode is a type that Barcode Xpress doesn't read. Attempt to solve any image quality, resolution, and scanning properties using the included ImagXpress and ScanFix components. ImagXpress can be used to set both horizontal and vertical resolutions the same.
  • Confidence values - Confidence values are programmed into the component. Barcode Xpress is conservative on confidence values compared to other competitive components so the developer understands when a barcode may not be 100% accurate. This ensures the barcode recognized is producing accurate data.

Error Codes

Listed below is a cross reference of error codes and their corresponding descriptions.

Error Codes | Error | Description
9000 | OutOfMemoryException | There is not enough memory to continue the operation.
9001 | InvalidParameterException | Invalid parameter.
9002 | ParameterOutOfRangeException | Parameter out of range.
9003 | InvalidBitmapException | Invalid bitmap.
9004 | UnableReadbitmapException | Unable to read bitmap.
9005 | UnsupportBarcodeTypeException | Unsupported barcode type.
9006 | InvalidIndexException | Invalid index.
9007 | InvalidBarcodeValueException | Invalid barcode value set.
9008 | InsufficientWidthException | Insufficient barcode width.
9009 | InsufficientHeightException | Insufficient barcode height.
9010 | UnableCreateUPCEException | Unable to create UPC-E Barcode.
9011 | InvalidLicenseException | Invalid license.
9012 | TimeoutErrorException | Timeout Error.
9013 | ImageNotAvailableException | Image not available.
9014 | InternalErrorException | Internal error.
9015 | InvalidAreaException | Area is outside required range.
9100 | PDF417EncodingException | PDF417 encoding error.
9101 | RowCountException | Invalid row count for the barcode type.
9102 | ColumnCountException | Invalid column count for the barcode type.
9104 | LargeDataSizeException | Barcode data too large for the barcode symbol size.
9105 | InvalidErrorCorrectionLevelException | Error correction level is invalid.
9106 | ErrorCorrectionLevelTooHighException | Error correction level is too high, will not fit in barcode symbol with the data.

See Also

Getting Support and Samples


%%PageItemTitle%%

See Also

BarcodeXpress Members

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BarcodeXpress Object

Description

BarcodeXpress Class

For a list of all members defined in this module, see BarcodeXpress members.

See Also

BarcodeXpress Members


%%PageItemTitle%% $$Members$$

BarcodeXpress Overview

BarcodeXpress Object Members

Public Methods

Public Method AboutBox | Displays a dialog box that contains the Barcode Xpress version, build, and copyright information.
Public Method AnalyzeBarcode | This method has been deprecated and replaced by AnalyzehDib or AnalyzeIPicture.
Public Method AnalyzeBC | This method has been deprecated and replaced by AnalyzehDib or AnalyzeIPicture.
Public Method AnalyzehDib | This method detects a barcode within the given DIB (Device Independent Bitmap).
Public Method AnalyzeIPicture | This method detects a barcode within the given Picture.
Public Method GetBarcode | Returns the result properties with data of the given barcode index.
Public Method GetBarcodeResultDataValue | Gets the BarcodeResult as an array of bytes.
Public Method GetMakeBarcodeDataValue | Returns the barcode value as an array of bytes.
Public Method MakeBarcode | This method creates a barcode.
Public Method PrintBarcode | Prints a barcode to a printer Device Context (DC).
Public Method ReadFromStream | Reads a specially-formatted stream and places the values into properties of this object.
Public Method SetCtlFontName | This method sets the font name.
Public Method SetCtlFontSize | Sets the font size.
Public Method SetCtlFontStyle | Sets the font style.
Public Method SetCtlOFontName | Sets the font name used to display the UPC values that appear outside of the left and right guard bars.
Public Method SetCtlOFontSize | Sets the font size used to display the UPC values that appear outside of the left and right guard bars.
Public Method SetCtlOFontStyle | Sets the font style used to display the UPC values that appear outside of the left and right guard bars.
Public Method SetMakeBarcodeDataValue | Sets the barcode value as an array of bytes.
Public Method UnlockRuntime | Unlocks the component for use in runtime environments.
Public Method UnlockWeb | Unlocks the component for use in web servers.
Public Method WriteToStream | Writes some properties of this object to a specially-formatted stream.

Public Properties

Public Property AustralianPostCustomDecodeMode | Gets and sets the BC_AustralianPostCustomDecodeType value.
Public Property BarcodeAppendCheckSum | Gets and sets a value which determines if a check sum value is appended to the barcode during recognition.
Public Property BarcodeCap | Gets the barcode capability and performance for the system.
Public Property BarcodeCodeName | Gets the name of the recognized barcode type.
Public Property BarcodeH | Gets the height of the image area of the recognized barcode.
Public Property BarcodeIncludeControlCharacters | Gets and sets control characters in the barcode value during barcode recognition.
Public Property BarcodeInkColor | Gets and sets the ink color of barcodes to search for during recognition.
Public Property BarcodeOrientation | Gets and sets the orientation of barcodes to search for in recognition.
Public Property BarcodeResult | Gets the string value of the recognized barcode.
Public Property BarcodeResultStyle | Gets the enumeration type of the recognized barcode.
Public Property BarcodeSkew | Gets the angle of the recognized barcode.
Public Property BarcodeType | Gets and sets the type of barcodes to search for during recognition.
Public Property BarcodeW | Gets the width of the image area of the recognized barcode.
Public Property BarcodeX | Gets the X-Coordinate of the image area of the recognized barcode.
Public Property BarcodeX1 | Gets the x-coordinate of the top, left point of the recognized barcode.
Public Property BarcodeX2 | Gets the x-coordinate of the top, right point of the recognized barcode.
Public Property BarcodeX3 | Gets the x-coordinate of the bottom, right point of the recognized barcode.
Public Property BarcodeX4 | Gets the x-coordinate of the bottom, left point of the recognized barcode.
Public Property BarcodeY | Gets the y-coordinate of the image area of the recognized barcode.
Public Property BarcodeY1 | Gets the y-coordinate of the top, left point of the recognized barcode.
Public Property BarcodeY2 | Y-Coordinate of the top, right point of the recognized barcode.
Public Property BarcodeY3 | Gets the y-coordinate of the bottom, right point of the recognized barcode.
Public Property BarcodeY4 | Gets the y-coordinate of the bottom, left point of the recognized barcode.
Public Property ChecksumCharCount | Gets the number of characters in the recognized checksum.
Public Property ChecksumOK | Gets a check if there is a valid checksum value for the recognized barcode.
Public Property Confidence | Gets the confidence of the barcode that was recognized.
Public Property Debug | Specifies the state of debug logging for the component.
Public Property DebugLogFile | Gets and sets the full path name of the log file.
Public Property ErrorCode | Returns the last error number.
Public Property ErrorDescription | Returns the text description of the last error.
Public Property ErrorLevel | Gets and sets the error level of items that the component should write to the debug log file.
Public Property EvaluationMode | Gets and sets the limitations of the component in evaluation mode.
Public Property Font | Gets and sets the font of the barcode value written as text adjacent to the barcode being created.
Public Property hDIB | This property has been deprecated.
Public Property ImageSource | Set the image source for barcode recognition.
Public Property LicenseEdition | Gets and sets an indicator for the License Edition for the component.
Public Property MakeBarcodeAdjustBarSize | Gets and sets a dynamic setting of the width of the bars when creating a barcode.
Public Property MakeBarcodeAutoSize | Gets and sets dynamic sizing of the image when creating a barcode.
Public Property MakeBarcodeBarSize | Gets and sets the minimum width of the bars when creating a barcode.
Public Property MakeBarcodeBHeight | Sets the amount of white space on the top and bottom of the created barcode.
Public Property MakeBarcodeBWidth | Sets the amount of white space to the right and left of the created barcode.
Public Property MakeBarcodeCBarSize | Gets the width of a single width bar used to create the barcode.
Public Property MakeBarcodeColumns | The number of columns to create in a 2D barcode.
Public Property MakeBarcodeColumnsCreated | Gets the number of columns created in a barcode.
Public Property MakeBarcodeDataValueLength | Gets the length of the current barcode data in bytes.
Public Property MakeBarcodeDIB | Returns the barcode picture.
Public Property MakeBarcodeErrorCorrectionLevel | Error correction level used in 2D barcodes.
Public Property MakeBarcodeErrorCorrectionLevelUsed | Gets the error correction level used in the created barcode.
Public Property MakeBarcodeHeight | Gets and sets the height of the new image in which the created barcode will be drawn.
Public Property MakeBarcodeMinHeight | Gets and sets the minimum height of the bars when creating a barcode.
Public Property MakeBarcodePic | Returns a handle to the barcode Device Independent Bitmap.
Public Property MakeBarcodeRHeight | Gets the height of the image needed to create the barcode.
Public Property MakeBarcodeRows | Gets and sets the number of rows to create in a 2D barcode.
Public Property MakeBarcodeRowsCreated | Gets the number of rows created in a barcode.
Public Property MakeBarcodeRWidth | Gets the width of the image needed to create the barcode.
Public Property MakeBarcodeShowValue | Gets and sets whether the barcode value is written as text adjacent to the created barcode.
Public Property MakeBarcodeStyle | Gets and sets the type of barcode to create.
Public Property MakeBarcodeUPCNotchPercent | Notch percent of the barcode for the text value.
Public Property MakeBarcodeValue | String value of the barcode being created.
Public Property MakeBarcodeValueGap | Gets and sets the amount of gap between the text and barcode when creating a barcode.
Public Property MakeBarcodeValueLRGap | Gets and sets the vertical offset of outside text.
Public Property MakeBarcodeValueOFont | Gets and sets the font used to display the UPC values that appear outside of the left and right guard bars.
Public Property MakeBarcodeValueOGap | Gets and sets the amount of gap between the outside text and barcode when creating a barcode.
Public Property MakeBarcodeWidth | Gets and sets the width of the new image in which the created barcode will be drawn.
Public Property MaxBarcodes | Gets and sets the maximum number of barcodes to recognize.
Public Property NumBarcodes | Gets the number of barcodes recognized.
Public Property Picture | This property has been deprecated.
Public Property RaiseExceptions | Determines if errors are raised as exceptions in the application.
Public Property ReaderAreaHeight | Gets and sets the height of the rectangular area for the recognition engine to analyze for barcode processing.
Public Property ReaderAreaWidth | Gets and sets the width of the rectangular area for the recognition engine to analyze for barcode processing.
Public Property ReaderAreaX | Gets and sets the x (horizontal) coordinate of the rectangular area for the recognition engine to analyze for barcode processing.
Public Property ReaderAreaY | Gets and sets the y (vertical) coordinate of the rectangular area for the recognition engine to analyze for barcode processing.
Public Property ReaderScanDistance | Gets and sets the scan distance in pixels between line sweeps when searching for 1D barcodes.
Public Property ResultLen | Gets the length of the result string.
Public Property ReturnPossibleBarcodes | Include possible barcodes in the result list.
Public Property SSError | This property is being deprecated and replaced by the ErrorCode property.
Public Property SSErrorMsg | This property is being deprecated and replaced by the ErrorDescription property.
Public Property WriteChecksumChar | Gets and sets the checksum write flag for barcodes that optionally use checksums.

See Also

BarcodeXpress Overview


%%PageItemTitle%%

BarcodeXpress Object

AboutBox Method

Description

Displays a dialog box that contains the Barcode Xpress version, build, and copyright information.

Syntax

Public Sub AboutBox()

Remarks

This method displays an about box for the component. It includes useful information, such as the component name, dll name, build number, copyright dates, and links to Pegasus Imaging Corporations website.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | ImageSource Property

X
The left edge coordinate, in pixels, of the region of interest.
Y
The top edge coordinate, in pixels, of the region of interest.
Width
The width, in pixels, of the region of interest.
Height
The height, in pixels, of the region of interest.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

AnalyzeBarcode Method

Description

This method has been deprecated and replaced by AnalyzehDib or AnalyzeIPicture.

Syntax

Public Sub AnalyzeBarcode( _
   Optional ByVal X As Variant, _
   Optional ByVal Y As Variant, _
   Optional ByVal Width As Variant, _
   Optional ByVal Height As Variant _
)

Parameters

X
The left edge coordinate, in pixels, of the region of interest.
Y
The top edge coordinate, in pixels, of the region of interest.
Width
The width, in pixels, of the region of interest.
Height
The height, in pixels, of the region of interest.

Remarks

This method has been deprecated. Use the AnalyzehDib and AnalyzeIPicture methods instead.

Note: Barcode area parameters are optional.

The AnalyzeBarcode method uses the ImageSource property to determine the source of the bitmap.

The AnalyzeBarcode method analyzes the entire bitmap unless a search region is defined by the input parameters. The analysis is faster if a search region is defined. If it is desired to search the entire image, the input parameters can be ignored in containers that support this. (ie Visual Basic). In containers that require the input parameters to be present, simply set all input parameters (X, Y, Width and Height) to zero.

Note: If the bitmap used for recognition is a DIB defined by the hDIB property, it is the responsibility of the caller to free this resource when analysis is complete, and the DIB is no longer needed.

See Also

BarcodeXpress Object | ImageSource Property


%%PageItemTitle%%

BarcodeXpress Object | ImageSource Property | AnalyzeBarcode Method

X
The left edge coordinate, in pixels, of the region of interest.
Y
The top edge coordinate, in pixels, of the region of interest.
Width
The width, in pixels, of the region of interest.
Height
The height, in pixels, of the region of interest.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

AnalyzeBC Method

Description

This method has been deprecated and replaced by AnalyzehDib or AnalyzeIPicture.

Syntax

Public Sub AnalyzeBC( _
   ByVal X As Long, _
   ByVal Y As Long, _
   ByVal Width As Long, _
   ByVal Height As Long _
)

Parameters

X
The left edge coordinate, in pixels, of the region of interest.
Y
The top edge coordinate, in pixels, of the region of interest.
Width
The width, in pixels, of the region of interest.
Height
The height, in pixels, of the region of interest.

Remarks

This method has been deprecated. Use the AnalyzehDib and AnalyzeIPicture methods instead.

Note: Barcode area parameters are required.

The AnalyzeBC method uses the ImageSource property to determine the source of the bitmap.

The AnalyzeBC method is identical to the AnalyzeBarcode method except that the parameters are long data types and they are not optional. If it is desired to search the entire image, all input parameters (X, Y, Width and height) must be set to zero.

If the bitmap used for recognition is a DIB defined by the hDIB property, it is the responsibility of the caller to free this resource when analysis is complete, and the DIB is no longer needed.

See Also

BarcodeXpress Object | ImageSource Property | AnalyzeBarcode Method


%%PageItemTitle%%

BarcodeXpress Object

hDIB
A long which represents a handle to a DIB containing the barcode to be analyzed.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

AnalyzehDib Method

Description

This method detects a barcode within the given DIB (Device Independent Bitmap).

Syntax

Public Sub AnalyzehDib( _
   ByVal hDIB As Long _
)

Parameters

hDIB
A long which represents a handle to a DIB containing the barcode to be analyzed.

Remarks

The AnalyzehDib method is used for recognition of a barcode on the given hDIB image.

The ReaderAreaX, ReaderAreaY, ReaderAreaWidth and ReaderAreaHeight are used to create the rectangular area to be analyzed during recognition. If these properties are all set to 0, then the entire image is automatically searched.

The DIB must be a 1-bit monochrome bitmap.

It is the responsibility of the caller to free this resource when analysis is complete, and the DIB is no longer needed.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | Picture Property

Picture
A Picture object which contains the barcode to analyze.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

AnalyzeIPicture Method

Description

This method detects a barcode within the given Picture.

Syntax

Public Sub AnalyzeIPicture( _
   ByVal Picture As Picture _
)

Parameters

Picture
A Picture object which contains the barcode to analyze.

Remarks

The given Picture can be from a Form object, PictureBox control, Image control (Visual Basic), or the Picture property of another Pegasus Imaging control.

The ReaderAreaX, ReaderAreaY, ReaderAreaWidth and ReaderAreaHeight are used to create the rectangular area to be analyzed during recognition. If these properties are all set to 0, then the entire image is automatically searched.

See Also

BarcodeXpress Object | Picture Property


%%PageItemTitle%%

BarcodeXpress Object | AnalyzeBarcode Method

BarcodeNum
An integer value which represents the zero-based index number of the recognized barcode.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

GetBarcode Method

Description

Returns the result properties with data of the given barcode index.

Syntax

Public Sub GetBarcode( _
   ByVal BarcodeNum As Integer _
)

Parameters

BarcodeNum
An integer value which represents the zero-based index number of the recognized barcode.

Remarks

Valid values are from 0 to NumBarcodes -1.

The GetBarcode method should be called after the AnalyzehDib or AnalyzeIPicture method has been called, and barcodes were found.

Since Barcode Xpress can return multiple barcode results from a single scan, the detected barcode results (both solved and unsolved) will be sorted using the following criteria. Note that all solved barcodes will be ordered before unsolved barcodes.

  • First, the confidence factor is used to sort the barcode results from highest confidence to lowest.
  • Next, for any barcodes with the same confidence, they will then be sorted by their location, from top to bottom, then left to right.

Example

[GetBarcode Results in an array (Visual Basic)]

'Sort the results top to bottom
        Dim BarcodeArray() As BarcodeInfo
        Redim BarcodeArray(0 To BarcodeXpress5.NumBarcodes - 1)
        ' fill the user type array
        For i = 0 To BarcodeXpress5.NumBarcodes - 1
            BarcodeXpress5.GetBarcode i
            BarcodeArray(i).CodeName = BarcodeXpress5.BarcodeCodeName
            BarcodeArray(i).result = BarcodeXpress5.BarcodeResult
            BarcodeArray(i).CheckSumOK = BarcodeXpress5.CheckSumOK
            BarcodeArray(i).Confidence = BarcodeXpress5.Confidence
            BarcodeArray(i).Length = BarcodeXpress5.ResultLen
            BarcodeArray(i).X = BarcodeXpress5.BarcodeX
            BarcodeArray(i).Y = BarcodeXpress5.BarcodeY
            BarcodeArray(i).H = BarcodeXpress5.BarcodeH
            BarcodeArray(i).W = BarcodeXpress5.BarcodeW
        Next i
        ' actual sort results top to bottom
        Dim temp As BarcodeInfo
        For i = Ubound(BarcodeArray) - 1 To 0 Step -1
            For j = 0 To i
                If BarcodeArray(j).Y > BarcodeArray(j + 1).Y Then
                    temp = BarcodeArray(j + 1)
                    BarcodeArray(j + 1) = BarcodeArray(j)
                    BarcodeArray(j) = temp
                End If
            Next
        Next

See Also

BarcodeXpress Object | AnalyzeBarcode Method


%%PageItemTitle%%

BarcodeXpress Object | BarcodeResult Property | ResultLen Property

pVal
An array of bytes to hold the barcode data.
maxLimit
Maximum number of bytes to place in pVal. The actual number of bytes written to pVal is returned in maxLimit.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

GetBarcodeResultDataValue Method

Description

Gets the BarcodeResult as an array of bytes.

Syntax

Public Sub GetBarcodeResultDataValue( _
   ByRef pVal As Byte, _
   ByRef maxLimit As Long _
)

Parameters

pVal
An array of bytes to hold the barcode data.
maxLimit
Maximum number of bytes to place in pVal. The actual number of bytes written to pVal is returned in maxLimit.

Remarks

This method retrieves the resulting value in an array of bytes from the BarcodeResult property. Use the ResultLen property to get the buffer size in bytes required to receive the barcode result data value.

See Also

BarcodeXpress Object | BarcodeResult Property | ResultLen Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeDataValueLength Property | MakeBarcodeValue Property

pValue
An array of bytes to hold the barcode data.
maxLength
The maximum number of bytes to place in pValue. The actual number of bytes written to pValue is returned in maxLength.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

GetMakeBarcodeDataValue Method

Description

Returns the barcode value as an array of bytes.

Syntax

Public Sub GetMakeBarcodeDataValue( _
   ByRef pValue As Byte, _
   ByRef maxLength As Long _
)

Parameters

pValue
An array of bytes to hold the barcode data.
maxLength
The maximum number of bytes to place in pValue. The actual number of bytes written to pValue is returned in maxLength.

Remarks

This method should be used when the barcode contains non-ASCII values (byte values of 0 and those greater than 128).

Use the MakeBarcodeDataValueLength property to get the buffer size in bytes required to receive the barcode data value. If a barcode contains only ASCII values, use the MakeBarcodeValue property.

See Also

BarcodeXpress Object | MakeBarcodeDataValueLength Property | MakeBarcodeValue Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeStyle Property | MakeBarcodeValue Property | MakeBarcodePic Property | MakeBarcodeDIB Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcode Method

Description

This method creates a barcode.

Syntax

Public Sub MakeBarcode()

Remarks

The barcode style and the barcode value are the two properties required to set when creating a barcode. The barcode style is determined by the MakeBarcodeStyle property. The barcode value is determined by the MakeBarcodeValue property.

The MakeBarcode method analyzes the barcode value to determine if it is correct for the barcode style. If successful, the barcode bitmap can be accessed using the MakeBarcodePic and MakeBarcodeDIB properties.

See Also

BarcodeXpress Object | MakeBarcodeStyle Property | MakeBarcodeValue Property | MakeBarcodePic Property | MakeBarcodeDIB Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeBarSize Property | MakeBarcodeHeight Property | MakeBarcode Method

hDC
The printer device context (DC).
X
The x-coordinate position of the upper, left corner of the barcode image, in printer units.
Y
The y-coordinate position of the upper, left corner of the barcode image, in printer units.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

PrintBarcode Method

Description

Prints a barcode to a printer Device Context (DC).

Syntax

Public Sub PrintBarcode( _
   ByVal hDC As Long, _
   ByVal X As Long, _
   ByVal Y As Long _
)

Parameters

hDC
The printer device context (DC).
X
The x-coordinate position of the upper, left corner of the barcode image, in printer units.
Y
The y-coordinate position of the upper, left corner of the barcode image, in printer units.

Remarks

The printer units are pixels, or dots/inch. For example, on a 300 dpi printer, setting the X and Y parameters to 300 would position the barcode one inch from the upper left side of the paper. The barcode is printed using the resolution of the printer. This means that a barcode that looks correct (in terms of size) on a monitor (e.g. 72 dpi) might print very small depending on the resolution of the printer (e.g. 300 dpi). An easy way to compensate for this is to change the bar size (MakeBarcodeBarSize) and the barcode height (MakeBarcodeHeight) to a larger value when printing the barcode.

The PrintBarcode method is essentially the same as the MakeBarcode method, just with different output. See the MakeBarcode method description for details on creating barcodes.

See Also

BarcodeXpress Object | MakeBarcodeBarSize Property | MakeBarcodeHeight Property | MakeBarcode Method


%%PageItemTitle%%

BarcodeXpress Object | WriteToStream Method

stream
A stream that the WriteToStream method created.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ReadFromStream Method

Description

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

Syntax

Public Sub ReadFromStream( _
   ByVal stream As String _
)

Parameters

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 component created it. This method will fail to read a string that a newer version of this component created.

Note: You should retrieve the value for the stream from the Construction property of a FormDirector FormDefinitionFile object. When the Type property of that object is "BarcodeXpress", the Content property contains a string that you should send to this method.

See Also

BarcodeXpress Object | WriteToStream Method


%%PageItemTitle%%

BarcodeXpress Object

Name
A string representing the name of the font.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetCtlFontName Method

Description

This method sets the font name.

Syntax

Public Sub SetCtlFontName( _
   ByVal Name As String _
)

Parameters

Name
A string representing the name of the font.

Remarks

This method is used in containers that don't give you direct access to the control's TextFont property Font object like Visual C++.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

Size
A long value which represents the size of the font, in points.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetCtlFontSize Method

Description

Sets the font size.

Syntax

Public Sub SetCtlFontSize( _
   ByVal Size As Long _
)

Parameters

Size
A long value which represents the size of the font, in points.

Remarks

This method is used in containers that do not give you direct access to the control's TextFont property Font object like Visual C++.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

Style

An integer value which represents the style of font:

0 - Bold

1 - Italic

2 - Underline

3 - Strikethrough

Value
A long value which indicates if the style is set (1) or not set (0). Toggles the style on or off.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetCtlFontStyle Method

Description

Sets the font style.

Syntax

Public Sub SetCtlFontStyle( _
   ByVal Style As Integer, _
   ByVal Value As Long _
)

Parameters

Style

An integer value which represents the style of font:

0 - Bold

1 - Italic

2 - Underline

3 - Strikethrough

Value
A long value which indicates if the style is set (1) or not set (0). Toggles the style on or off.

Remarks

This method is used in containers that do not give you direct access to the control's TextFont property Font object like Visual C++.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN

Name
A string value representing the name of the font.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetCtlOFontName Method

Description

Sets the font name used to display the UPC values that appear outside of the left and right guard bars.

Syntax

Public Sub SetCtlOFontName( _
   ByVal Name As String _
)

Parameters

Name
A string value representing the name of the font.

Remarks

The default value is Arial.

Outside value text is only written for certain barcodes where this is standard. The barcode types that support outside text are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types, this value is ignored.

This method is used in containers that do not give you direct access to the control's TextFont property Font object like Visual C++.

See Also

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN


%%PageItemTitle%%

BarcodeXpress Object

Size
A long value representing the size of the font, in points.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetCtlOFontSize Method

Description

Sets the font size used to display the UPC values that appear outside of the left and right guard bars.

Syntax

Public Sub SetCtlOFontSize( _
   ByVal Size As Long _
)

Parameters

Size
A long value representing the size of the font, in points.

Remarks

The default value is 16.

Outside value text is only written for certain barcodes where this is standard. The barcode types that support outside text are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types, this value is ignored.

This method is used in containers that do not give you direct access to the control's TextFont property Font object like Visual C++.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

Style

An integer value which represents the style of the font:

0 - Bold

1 - Italic

2 - Underline

3 - Strikethrough

Value
A long value which indicates if the style is set (1) or not set (0). Toggles the style on or off.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetCtlOFontStyle Method

Description

Sets the font style used to display the UPC values that appear outside of the left and right guard bars.

Syntax

Public Sub SetCtlOFontStyle( _
   ByVal Style As Integer, _
   ByVal Value As Long _
)

Parameters

Style

An integer value which represents the style of the font:

0 - Bold

1 - Italic

2 - Underline

3 - Strikethrough

Value
A long value which indicates if the style is set (1) or not set (0). Toggles the style on or off.

Remarks

The default value is ?

Outside value text is only written for certain barcodes where this is standard. The barcode types that support outside text are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types, this value is ignored.

This method is used in containers that do not give you direct access to the control's TextFont property Font object like Visual C++.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeValue Property

pValue
An array of bytes to hold the barcode data.
length
A long value which represents the number of bytes in pValue.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SetMakeBarcodeDataValue Method

Description

Sets the barcode value as an array of bytes.

Syntax

Public Sub SetMakeBarcodeDataValue( _
   ByRef pValue As Byte, _
   ByVal length As Long _
)

Parameters

pValue
An array of bytes to hold the barcode data.
length
A long value which represents the number of bytes in pValue.

Remarks

This method should be used when the barcode value contains non-ASCII values (byte values of 0 and those greater than 128). Barcode data that contains only ASCII values can be set with the MakeBarcodeValue property.

See Also

BarcodeXpress Object | MakeBarcodeValue Property


%%PageItemTitle%%

BarcodeXpress Object | Runtime Licensing | Development Mode

PW0
One of the unlock codes.
PW1
One of the unlock codes.
PW2
One of the unlock codes.
PW3
One of the unlock codes.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

UnlockRuntime Method

Description

Unlocks the component for use in runtime environments.

Syntax

Public Sub UnlockRuntime( _
   ByVal PW0 As Long, _
   ByVal PW1 As Long, _
   ByVal PW2 As Long, _
   ByVal PW3 As Long _
)

Parameters

PW0
One of the unlock codes.
PW1
One of the unlock codes.
PW2
One of the unlock codes.
PW3
One of the unlock codes.

Remarks

You must call this method before your application uses this component. It unlocks the component for your use, according to the license that you have purchased. If you do not call this function, your application will only work on a machine with the component development environment installed on it.

If you lose your unlock codes, you can retrieve them on our website: http://www.pegasusimaging.com/lostcodes.htm

See Also

BarcodeXpress Object | Runtime Licensing | Development Mode


%%PageItemTitle%%

BarcodeXpress Object | Trial Mode | Development Mode | Installing on a Development Machine

pVal
A string value which represents the unlock key.
See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

UnlockWeb Method

Description

Unlocks the component for use in web servers.

Syntax

Public Sub UnlockWeb( _
   ByVal pVal As String _
)

Parameters

pVal
A string value which represents the unlock key.

Remarks

You must call this method before your application uses this component. It unlocks the component for your use, according to the license that you have purchased. If you do not call this function, your application will only work on a machine with the component development environment installed on it.

If you lose your unlock string, you can retrieve it on our website: http://www.pegasusimaging.com/lostcodes.htm

See Also

BarcodeXpress Object | Trial Mode | Development Mode | Installing on a Development Machine


%%PageItemTitle%%

BarcodeXpress Object | ReadFromStream Method

WriteToStream Method

Description

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

Syntax

Public Function WriteToStream() As String

Return Type

A stream that can be reloaded using the ReadFromStream method.

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 component. However, even if the format changes, future versions of this component will be able to read streams that this method generates.

Note: You should save the stream in the Construction property of a FormDirector FormDefinitionFile object. You should set the Type to "BarcodeXpress" and the Content to the value that this method returns.

See Also

BarcodeXpress Object | ReadFromStream Method


%%PageItemTitle%%

BarcodeXpress Object | BC_AustralianPostCustomDecodeType Enumeration | Australian Post 4 State Barcode

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

AustralianPostCustomDecodeMode Property

Description

Gets and sets the BC_AustralianPostCustomDecodeType value.

Property type

Read-write property

Syntax (Visual Basic)

Public Property AustralianPostCustomDecodeMode() As BC_AustralianPostCustomDecodeType

Return Type

The BC_AustralianPostCustomDecodeType value set.

Remarks

This property gets and sets the Australian Post 4 State barcode custom decode mode from the BC_AustrailianPostCustomDecodeType enumeration value options.

See Also

BarcodeXpress Object | BC_AustralianPostCustomDecodeType Enumeration | Australian Post 4 State Barcode


%%PageItemTitle%%

BarcodeXpress Object | Checksums

BarcodeAppendCheckSum Property

Description

Gets and sets a value which determines if a check sum value is appended to the barcode during recognition.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeAppendCheckSum() As Boolean

Return Type

A boolean value which is true to append a check sum value. Otherwise, false is returned.

Remarks

The default value is False.

For barcode types that require a checksum, the checksum value will be appended if True. This property does not have any effect for barcode types which do not have a checksum or the checksum is optional.

Note: The UPC and EAN barcodes always append a checksum character to the barcode results regardless of this properties value.

See Also

BarcodeXpress Object | Checksums


%%PageItemTitle%%

BarcodeXpress Object | NumBarcodes Property | AnalyzehDib Method | AnalyzeIPicture Method

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BarcodeCap Property

Description

Gets the barcode capability and performance for the system.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeCap() As String

Return Type

A string value which represents the performance and recognition time.

Remarks

The string returned by the NumBarcodes property will state the number of barcodes detected.

The BarcodeCap value is only valid after the AnalyzehDib or AnalyzeIPicture method has been invoked.

See Also

BarcodeXpress Object | NumBarcodes Property | AnalyzehDib Method | AnalyzeIPicture Method


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method | BarcodeResult Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BarcodeCodeName Property

Description

Gets the name of the recognized barcode type.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeCodeName() As String

Return Type

A string value which represents the barcode type name of the recognized barcode.

Remarks

The current barcode is determined by the GetBarcode method. The barcode name is the name of the barcode type (e.g. "Code39"), not the value of the barcode. The BarcodeResult property returns the value of the barcode.

If ReturnPossibleBarcodes is True, and only a region of interest is returned in the result, then the barcode name is a null string.

See Also

BarcodeXpress Object | GetBarcode Method | BarcodeResult Property


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method

BarcodeH Property

Description

Gets the height of the image area of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeH() As Long

Return Type

A long value which represents the height.

Remarks

The current barcode is determined by the GetBarcode method. If the barcode is skewed, the height represents the height of the rectangle surrounding the barcode.

See Also

BarcodeXpress Object | GetBarcode Method


%%PageItemTitle%%

BarcodeXpress Object | Codabar

BarcodeIncludeControlCharacters Property

Description

Gets and sets control characters in the barcode value during barcode recognition.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeIncludeControlCharacters() As Boolean

Return Type

A boolean value which is True to include barcode characters. Otherwise, False is returned.

Remarks

The default value is False.

If set to True, barcode control characters are included in the barcode read value. This has no effect for barcodes which do not support control characters. Codabar barcode returns the Start and Stop characters.

See Also

BarcodeXpress Object | Codabar


%%PageItemTitle%%

BarcodeXpress Object | BC_InkColor Enumeration

BarcodeInkColor Property

Description

Gets and sets the ink color of barcodes to search for during recognition.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeInkColor() As BC_InkColor

Return Type

The BC_InkColor enumeration value set.

Remarks

The default value is BC_InkColorBlack.

The barcode recognition engine is capable of detecting barcodes in an image without any prior knowledge of the barcode color. However, you can speed up the recognition process by specifying a barcode color.

See Also

BarcodeXpress Object | BC_InkColor Enumeration


%%PageItemTitle%%

BarcodeXpress Object | BC_Orientation Enumeration

BarcodeOrientation Property

Description

Gets and sets the orientation of barcodes to search for in recognition.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeOrientation() As BC_Orientation

Return Type

The BC_Orientation enumeration value set.

Remarks

The default value is BC_OrientationBoth.

The barcode recognition engine is capable of detecting barcodes in an image without any prior knowledge of the barcode orientation. However, you can speed up the recognition process by specifying a barcode orientation. This property applies to 1D barcodes only.

See Also

BarcodeXpress Object | BC_Orientation Enumeration


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method | ResultLen Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BarcodeResult Property

Description

Gets the string value of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeResult() As String

Return Type

A string value which represents the recognized barcode.

Remarks

The current barcode is determined by the GetBarcode method.

The BarcodeResult property returns a string value. Some barcode styles allow the encoding of binary data which will be returned in this string. Even though there may be intervening null characters, the data will be accessible out to ResultLen bytes.

See Also

BarcodeXpress Object | GetBarcode Method | ResultLen Property


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method | BC_BarcodeStyle Enumeration

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BarcodeResultStyle Property

Description

Gets the enumeration type of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeResultStyle() As BC_BarcodeStyle

Return Type

The BC_BarcodeStyle value set.

Remarks

The current barcode is determined by the GetBarcode method.

If ReturnPossibleBarcodes is True, and only a region of interest is returned in the results, then the barcode style is BC_StyleUnknown.

See Also

BarcodeXpress Object | GetBarcode Method | BC_BarcodeStyle Enumeration


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method

BarcodeSkew Property

Description

Gets the angle of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeSkew() As Long

Return Type

A long value which represents the angle of the barcode.

Remarks

The current barcode is determined by the GetBarcode method.

The skew angle is measured in degrees. 0 degrees is horizontal. Rotation is measured counter-clockwise, so a skew angle of 90 degrees means the barcode is oriented vertically with the top of the barcode on the left side.

See Also

BarcodeXpress Object | GetBarcode Method


%%PageItemTitle%%

BarcodeXpress Object | Overview

BarcodeType Property

Description

Gets and sets the type of barcodes to search for during recognition.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeType() As Long

Return Type

A long value which represents the type of barcode to search for.

Remarks

The default value is 0 (Unknown Barcode type).

By default, the barcode engine will search for all 1D barcodes. The 1D barcode set includes all types, except PatchCode, PostNet, PDF417, DataMatrix, IntelligentMail, Royal Post Mail 4-State, QRcode and Australian Post 4-State.

The barcode recognition engine is capable of detecting 1D barcodes in an image without any prior knowledge of the barcode type. However, you can speed up the recognition process by specifying a barcode type.

Barcode types can be combined. For example, if you want to specify UPC-A and CODE 93, set the BarcodeType property to 16384 + 1024 = 17408 (&H4400).

Valid values for BarcodeType:

  • 0 (&H0) - The expected barcode type is unknown. All 1D barcode types will be tested.

  • 1 (&H1) - The expected barcode type is INDUSTRY 2 OF 5.

  • 2 (&H2) - The expected barcode type is INTERLEAVED 2 OF 5.

  • 4 (&H4) - The expected barcode type is IATA 2 OF 5.

  • 8 (&H8) - The expected barcode type is DATALOGIC 2 OF 5.

  • 16 (&H10) - The expected barcode type is INVERT 2 OF 5.

  • 32 (&H20) - The expected barcode type is BCD MATRIX.

  • 64 (&H40) - The expected barcode type is MATRIX 2 OF 5.

  • 128 (&H80) - The expected barcode type is CODE 32.

  • 256 (&H100) - The expected barcode type is CODE 39.

  • 512 (&H200) - The expected barcode type is CODABAR 2.

  • 1024 (&H400) - The expected barcode type is CODE 93.

  • 2048 (&H800) - The expected barcode type is CODE 128.

  • 4096 (&H1000) - The expected barcode type is EAN-13.

  • 8192 (&H2000) - The expected barcode type is EAN-8.

  • 16384 (&H4000) - The expected barcode type is UPC-A.

  • 32768 (&H8000) - The expected barcode type is UPC-E.

  • 65536 (&H10000) - The expected barcode type is ADD 5.

  • 131072 (&H20000) - The expected barcode type is ADD 2.

  • 262144 (&H40000) - The expected barcode type is UCC128/EAN-128.

  • 524288 (&H80000) - The expected barcode type is Patch Code.

  • 1048576 (&H100000) - The expected barcode type is PostNet.

  • 2097152 (&H200000) - The expected barcode type is PDF417. Note: Requires Professional Edition registration.

  • 4194304 (&H400000) - The expected barcode type is DataMatrix. Note: Requires Professional Edition registration.

  • 8388608 (&H800000) - The expected barcode type is Code 39 Extended.

  • 16777216 (&H1000000) - The expected barcode type is Code 93 Extended.

  • 33554432 (&H2000000) - The expected barcode type is QRcode. Note: Requires Professional Edition registration.

  • 67108864 (&H4000000) - The expected barcode type is Intelligent Mail.

  • 134217728 (&H8000000) - The expected barcode type is British Royal Post 4 State.

  • 268435456 (&H10000000) - The expected barcode type is Australian Post 4 State.

See Also

BarcodeXpress Object | Overview


%%PageItemTitle%%

BarcodeXpress Object

BarcodeW Property

Description

Gets the width of the image area of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeW() As Long

Return Type

A long value which represents the width of the image area of the barcode.

Remarks

The current barcode is determined by the GetBarcode method.

If the barcode is skewed, the width represents the width of the rectangle surrounding the barcode.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeX Property

Description

Gets the X-Coordinate of the image area of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeX() As Long

Return Type

A long value which represents the image area of the barcode.

Remarks

The current barcode is determined by the GetBarcode method.

If the barcode is skewed, the horizontal starting position represents the left horizontal position of the rectangle surrounding the barcode.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeX1 Property

Description

Gets the x-coordinate of the top, left point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeX1() As Long

Return Type

A long value which represents the x-coordinate of the top, left point.

Remarks

The current barcode is determined by the GetBarcode method.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeX2 Property

Description

Gets the x-coordinate of the top, right point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeX2() As Long

Return Type

A long value which represents the top, right point.

Remarks

The current barcode is determined by the GetBarcode method.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeX3 Property

Description

Gets the x-coordinate of the bottom, right point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeX3() As Long

Return Type

A long value which represents the bottom, right point.

Remarks

The current barcode is determined by the GetBarcode method. Barcode properties X1 through X4 locate the corner points of linear 1D barcodes along the horizontal axis.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeX4 Property

Description

Gets the x-coordinate of the bottom, left point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeX4() As Long

Return Type

A long value which represents the bottom, left point.

Remarks

The current barcode is determined by the GetBarcode method. Barcode properties X1 through X4 locate the corner points of linear 1D barcodes along the horizontal axis.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeY Property

Description

Gets the y-coordinate of the image area of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeY() As Long

Return Type

A long value which represents the y-coordinate of the image area.

Remarks

The current barcode is determined by the GetBarcode method.

If the barcode is skewed, the horzontal starting position represents the left horizontal position of the rectangle surrounding the barcode.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeY1 Property

Description

Gets the y-coordinate of the top, left point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeY1() As Long

Return Type

A long value which represents the top, left point.

Remarks

The current barcode is determined by the GetBarcode method.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeY2 Property

Description

Y-Coordinate of the top, right point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeY2() As Long

Return Type

A long value which represents the top, right point.

Remarks

The current barcode is determined by the GetBarcode method.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeY3 Property

Description

Gets the y-coordinate of the bottom, right point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeY3() As Long

Return Type

A long value which represents the bottom, right point.

Remarks

The current barcode is determined by the GetBarcode method. Barcode properties X2 and Y2 through X4 and Y4 identify the remaining points clockwise from X1, Y1.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

BarcodeY4 Property

Description

Gets the y-coordinate of the bottom, left point of the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property BarcodeY4() As Long

Return Type

A long value which represents the bottom, left point.

Remarks

The current barcode is determined by the GetBarcode method. Barcode properties X2 and Y2 through X4 and Y4 identify the remaining points clockwise from X1, Y1.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method

ChecksumCharCount Property

Description

Gets the number of characters in the recognized checksum.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ChecksumCharCount() As Integer

Return Type

An integer value which represents the checksum number of characters.

Remarks

The current barcode is determined by the GetBarcode method.

If a check sum does not exist, or the check sum evaluated incorrectly, ChecksumCharCount will return 0.

See Also

BarcodeXpress Object | GetBarcode Method


%%PageItemTitle%%

BarcodeXpress Object

ChecksumOK Property

Description

Gets a check if there is a valid checksum value for the recognized barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ChecksumOK() As Integer

Return Type

An integer value which represents if the check sum is valid.

Remarks

The current barcode is determined by the GetBarcode method.

  • For barcodes with a check sum, it returns whether the check sum is valid. A value of 1 represents True, a value of 0 represents False.
  • For barcodes without a check sum, it returns False.
  • For barcodes with error correction, it returns True.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

Confidence Property

Description

Gets the confidence of the barcode that was recognized.

Property type

Read-write property

Syntax (Visual Basic)

Public Property Confidence() As Long

Return Type

A long value which represents the confidence of the barcode.

Remarks

All barcode confidence values begin at 100.

  • 1D barcodes - Confidence values are decreased as the widths of the bars vary over the barcode.
  • 2D barcodes - Confidence values decrease based on the amount of error correction used in decoding the barcode.
  • Barcodes which use checksums - If a checksum error is detected, the confidence is set to 50.

Confidence values less than 30 are considered unreadable and any data returned is not considered reliable.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

Debug Property

Description

Specifies the state of debug logging for the component.

Property type

Read-write property

Syntax (Visual Basic)

Public Property Debug() As Boolean

Return Type

A boolean value which is True if logging is turned on. Otherwise, False is returned.

Remarks

By default, the log file will be written to "My Documents\BarcodeXpress5.log"

This method allows you to turn the debug log file on or off without changing any of the other debug settings. When this value is True , the component will write items to the debug log file, as specified by the DebugLogFile.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

DebugLogFile Property

Description

Gets and sets the full path name of the log file.

Property type

Read-write property

Syntax (Visual Basic)

Public Property DebugLogFile() As String

Return Type

A string which represents the name and directory of the debug log file.

Remarks

This property allows you to control the location of the debug log file.

Valid value: Any valid filename.

Default value: "temp\BarcodeXpress5.log"

Note: This property will have no effect if you set the Debug property to false.

Example

...

// Set Debug to true for logging to be performed

bcXpress.Debug = True;

...

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | ErrorDescription Property

ErrorCode Property

Description

Returns the last error number.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ErrorCode() As Long

Return Type

A long representing the last error number.

Remarks

This property stores the last error until the next operation of the Barcode Xpress control.

See How To Debug Your Application topic for details on each error number.

See Also

BarcodeXpress Object | ErrorDescription Property


%%PageItemTitle%%

BarcodeXpress Object | ErrorCode Property

ErrorDescription Property

Description

Returns the text description of the last error.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ErrorDescription() As String

Return Type

A string representing the description of the last error.

Remarks

This property give you the string name of the error while the ErrorCode property returns the last error number.

See Also

BarcodeXpress Object | ErrorCode Property


%%PageItemTitle%%

BarcodeXpress Object

ErrorLevel Property

Description

Gets and sets the error level of items that the component should write to the debug log file.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ErrorLevel() As BC_ErrorLevels

Return Type

The BC_ErrorLevels value set.

Remarks

The default value is BC_Production.

This property allows you to control the amount of information that the component places into the DebugLogFile. Since it is expensive to generate and write debug log items, set this property to write the least amount of information that you will find useful.

Note: This property will have no effect if the Debug property is set to false.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

EvaluationMode Property

Description

Gets and sets the limitations of the component in evaluation mode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property EvaluationMode() As BC_EvaluationMode

Return Type

The BC_EvaluationMode value set.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

Font Property

Description

Gets and sets the font of the barcode value written as text adjacent to the barcode being created.

Property type

Read-write property

Syntax (Visual Basic)

Public Property Font() As Font

Return Type

The Font value set.

Remarks

The default value is "Arial", 16, Normal.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | ImageSource Property | AnalyzeBarcode Method | BC_ImageSource Enumeration

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

hDIB Property

Description

This property has been deprecated.

Property type

Read-write property

Syntax (Visual Basic)

Public Property hDIB() As Long

Return Type

A long value which represents a handle to a DIB.

Remarks

This property has been deprecated and replace by the AnalyzehDib method.

See Also

BarcodeXpress Object | ImageSource Property | AnalyzeBarcode Method | BC_ImageSource Enumeration


%%PageItemTitle%%

BarcodeXpress Object | BC_Edition Enumeration | LicenseEdition Property | Trial Mode | Development Mode | License Agreement

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ImageSource Property

Description

Set the image source for barcode recognition.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ImageSource() As BC_ImageSource

Return Type

The BC_ImageSource enumeration value set.

Remarks

The default is BC_ImageSourceDIB.

The ImageSource property must be set before using the AnalyzeBarcode method.

If this property is set to BC_ImageSourceDIB, it is the responsibility of the caller to free this resource when the analysis is complete, and the DIB is no longer needed.

The recommended bitmap source is a DIB (Device Independent Bitmap) or the clipboard and not the Picture property since it returns a low resolution Device Dependent Bitmap.

See Also

BarcodeXpress Object | BC_Edition Enumeration | LicenseEdition Property | Trial Mode | Development Mode | License Agreement


%%PageItemTitle%%

BarcodeXpress Object

LicenseEdition Property

Description

Gets and sets an indicator for the License Edition for the component.

Property type

Read-write property

Syntax (Visual Basic)

Public Property LicenseEdition() As BC_Edition

Return Type

The BC_Edition value set.

Remarks

The default value is BC_EditionProfessionalPlus2DWrite.

The LicenseEdition property lets developers determine which Edition is best suited for their application before they purchase BarcodeXpress. When the trial BarcodeXpress Development kit has been installed, you'll be able to select any of the available Editions, which will determine the speed at which the barcode engine will detect your barcodes.

Also, for developers that purchase a Professional Edition license, the LicenseEdition property can be used to ‘throttle back’ their applications to offer a range of performance in their products.

If a Standard or Professional Edition license is purchased, the LicenseEdition property can only be set to Standard Edition or Professional Edition, respectively. If any other available Edition is selected, the control will change to that specified Edition, but will revert back to a Trial license.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeWidth Property | MakeBarcodeBarSize Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeAdjustBarSize Property

Description

Gets and sets a dynamic setting of the width of the bars when creating a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeAdjustBarSize() As Boolean

Return Type

A boolean value which is True to increase the widths of the barcode bars to best fit the complete barcode into the user defined image width. Otherwise, False is returned.

Remarks

The default value is True.

When True, the bar widths will increase to a value which best fits the complete barcode into the user defined image width, set by MakeBarcodeWidth. If False, the bar width set by MakeBarcodeBarSize will be used, and the barcode will be centered on the image.

See Also

BarcodeXpress Object | MakeBarcodeWidth Property | MakeBarcodeBarSize Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeWidth Property | MakeBarcodeHeight Property | SSError Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeAutoSize Property

Description

Gets and sets dynamic sizing of the image when creating a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeAutoSize() As Boolean

Return Type

A boolean value which is true to dynamically set the sizing of the image.

Remarks

The default value is True.

When True, the image width and/or height will increase to fit the complete barcode. If False, the image area will be defined by MakeBarcodeWidth and MakeBarcodeHeight. In this case, if the required size of the barcode is too large, an insufficient size error will be returned to ErrorCode when MakeBarcode is called.

See Also

BarcodeXpress Object | MakeBarcodeWidth Property | MakeBarcodeHeight Property | SSError Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeAdjustBarSize Property | Patch Code

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeBarSize Property

Description

Gets and sets the minimum width of the bars when creating a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeBarSize() As Integer

Return Type

An integer value which represents the minimum width of the bars.

Remarks

The default value is 3.

This value will be used as the single bar size, unless the MakeBarcodeAdjustBarSize property is True, in which case, the bar size used could be greater than this value.

The minimum bar size cannot be less than 1 pixel.

Accurate barcode recognition using Barcode Xpress requires that the minimum bar size be at least 2 pixels, with the exception of a PatchCode, which requires a bar size of at least 5 pixels.

See Also

BarcodeXpress Object | MakeBarcodeAdjustBarSize Property | Patch Code


%%PageItemTitle%%

BarcodeXpress Object

MakeBarcodeBHeight Property

Description

Sets the amount of white space on the top and bottom of the created barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeBHeight() As Long

Return Type

A long value which represents the amount of white space on the top and bottom.

Remarks

The default value is 50 pixels.

The white space surrounding the barcode is also known as the quiet zone. Barcode Xpress requires a quiet zone for accurate barcode detection.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object

MakeBarcodeBWidth Property

Description

Sets the amount of white space to the right and left of the created barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeBWidth() As Long

Return Type

A long value which represents the white space to the right and left.

Remarks

The default value is 50 pixels.

The white space surrounding the barcode is also known as the quiet zone. Barcode Xpress requires a quiet zone for accurate barcode detection.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcode Method | MakeBarcodeAdjustBarSize Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeCBarSize Property

Description

Gets the width of a single width bar used to create the barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeCBarSize() As Integer

Return Type

An integer which represents the width of a single bar.

Remarks

If the MakeBarcodeAdjustBarSize property was True when MakeBarcode was called, this property can be used to find out the bar size that was actually used to create the barcode.

See Also

BarcodeXpress Object | MakeBarcode Method | MakeBarcodeAdjustBarSize Property


%%PageItemTitle%%

BarcodeXpress Object | PDF417 | Data Matrix

MakeBarcodeColumns Property

Description

The number of columns to create in a 2D barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeColumns() As Long

Return Type

A long value which represents the number of columns to create.

Remarks

The default value is -1.

A value of -1 designates auto determination for both PDF417 and DataMatrix.

For PDF417 barcodes:

The column range is 1-30 inclusive.

Note: Rows * columns cannot exceed 928. This is the maximum size of a PDF417 barcode.

For DataMatrix barcodes:

The column ranges are:

10 x 10

12 x 12

14 x 14

16 x 16

18 x 18

20 x 20

24 x 24

26 x 26

32 x 32

36 x 36

40 x 40

44 x 44

48 x 48

52 x 52

64 x 64

72 x 72

80 x 80

88 x 88

96 x 96

104 x 104

120 x 120

132 x 132

144 x 144

8 x 18

8 x 32

12 x 26

12 x 36

16 x 36

16 x 48

Note: This property is not used with 1D barcodes.

See Also

BarcodeXpress Object | PDF417 | Data Matrix


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeColumns Property

MakeBarcodeColumnsCreated Property

Description

Gets the number of columns created in a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeColumnsCreated() As Long

Return Type

A long value which represents the number of columns created.

Remarks

If the input column value from MakeBarcodeColumns property is -1, this will be the calculated number of columns for the 2D barcode. Otherwise, the input number of columns is returned.

See Also

BarcodeXpress Object | MakeBarcodeColumns Property


%%PageItemTitle%%

BarcodeXpress Object | GetMakeBarcodeDataValue Method

MakeBarcodeDataValueLength Property

Description

Gets the length of the current barcode data in bytes.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeDataValueLength() As Long

Return Type

A long value which represents the number of bytes in the barcode value.

Remarks

This value is used to size the byte array prior to calling GetMakeBarcodeDataValue.

See Also

BarcodeXpress Object | GetMakeBarcodeDataValue Method


%%PageItemTitle%%

BarcodeXpress Object

MakeBarcodeDIB Property

Description

Returns the barcode picture.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeDIB() As Long

Return Type

A long value which represents the barcode picture.

Remarks

The MakeBarcodeDIB property can only be read once per created barcode. Subsequent reads will return a 0. If you wish to keep the hDIB around after the initial query, load it into a temporary variable first.

Example

Dim Temp As Long

Temp = BarcodeXpress5.MakeBarcodeDIB;

If (Temp != 0) Then

{

ImagXpress.hDib = Temp;

}

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | PDF417 | Data Matrix | MakeBarcodeColumns Property | MakeBarcodeRows Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeErrorCorrectionLevel Property

Description

Error correction level used in 2D barcodes.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeErrorCorrectionLevel() As Long

Return Type

A long value which represents the error correction level.

Remarks

The default value is -1.

For PDF417 barcodes:

The value range is 0 - 8 and -1.

A value of -1 will cause the component to choose the error correction level based on the size of the PDF417 symbol.

The 9 levels of error correction supported will take up the following amount of space:

  • 0 - 2 code words
  • 1 - 4 code words
  • 2 - 8 code words
  • 3 - 16 code words
  • 4 - 32 code words
  • 5 - 64 code words
  • 6 - 128 code words
  • 7 - 256 code words
  • 8 - 512 code words

DataMatrix uses a fixed error correction level.

Auto error correction will use error correction levels 2 through 8, which are the recommended according to the PDF417 specification. The error correction level should be set manually to either level 0 or level 1 for symbols where the MakeBarcodeRows * MakeBarcodeColumns are less than 10. This is due to the fact that the error correction level 2 requires 8 code words.

Note: This property value is ignored if not supported by the barcode type.

See Also

BarcodeXpress Object | PDF417 | Data Matrix | MakeBarcodeColumns Property | MakeBarcodeRows Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeErrorCorrectionLevel Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeErrorCorrectionLevelUsed Property

Description

Gets the error correction level used in the created barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeErrorCorrectionLevelUsed() As Long

Return Type

A long value which represents the error correction level used.

Remarks

If the input error correction level value from MakeBarcodeErrorCorrectionLevel property is -1, this will be the error correction level selected by the control. Otherwise, the input error correction level is returned.

See Also

BarcodeXpress Object | MakeBarcodeErrorCorrectionLevel Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeAutoSize Property

MakeBarcodeHeight Property

Description

Gets and sets the height of the new image in which the created barcode will be drawn.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeHeight() As Long

Return Type

A long value which represents the height of the new image.

Remarks

The default value is 600 pixels.

If MakeBarcodeAutoSize is set to True, it will override the MakeBarcodeHeight property value and set the image height to fit the height of the barcode created.

See Also

BarcodeXpress Object | MakeBarcodeAutoSize Property


%%PageItemTitle%%

BarcodeXpress Object | PDF417 | MakeBarcodeBarSize Property | Data Matrix | MakeBarcodeAutoSize Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeMinHeight Property

Description

Gets and sets the minimum height of the bars when creating a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeMinHeight() As Long

Return Type

A long value which represents the minimum height of the bars.

Remarks

The default value is 100 pixels.

For PDF417, this value is used as a multiplier of the MakeBarcodeBarSize used to determine the height of the barcode rows. This value should range between 3 and 5.

If a value is provided for DataMatrix barcode, it will be ignored.

If MakeBarcodeAutoSize is set to True, it will override the MakeBarcodeMinHeight property value and set the image height to fit the height of the barcode created.

See Also

BarcodeXpress Object | PDF417 | MakeBarcodeBarSize Property | Data Matrix | MakeBarcodeAutoSize Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodePic Property

MakeBarcodePic Property

Description

Returns a handle to the barcode Device Independent Bitmap.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodePic() As Picture

Return Type

A Picture value which represents the DIB.

Remarks

The MakeBarcodePic property can only be read once per created barcode. If you wish to keep the image around after the initial query, load it into an external variable first.

See Also

BarcodeXpress Object | MakeBarcodePic Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcode Method | MakeBarcodeBHeight Property | MakeBarcodeMinHeight Property | MakeBarcodeValueGap Property | PDF417 | MakeBarcodeRows Property | MakeBarcodeBarSize Property | Data Matrix

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeRHeight Property

Description

Gets the height of the image needed to create the barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeRHeight() As Long

Return Type

A long value which represents the height of the image.

Remarks

For 1D barcodes, this property returns the required height of the generated barcode after MakeBarcode has been called. The required height is the sum of MakeBarcodeBHeight x 2, MakeBarcodeMinHeight, MakeBarcodeValueGap, and the height of the value text font.

For PDF417 2D barcode, the required height is the sum of MakeBarcodeRows * MakeBarcodeBarSize * MakeBarcodeMinHeight + 2 * the vertical spacing.

For DataMatrix 2D barcode, the required height is the sum of MakeBarcodeRows * MakeBarcodeBarSize + 2 * the vertical spacing.

See Also

BarcodeXpress Object | MakeBarcode Method | MakeBarcodeBHeight Property | MakeBarcodeMinHeight Property | MakeBarcodeValueGap Property | PDF417 | MakeBarcodeRows Property | MakeBarcodeBarSize Property | Data Matrix


%%PageItemTitle%%

BarcodeXpress Object | Data Matrix | PDF417

MakeBarcodeRows Property

Description

Gets and sets the number of rows to create in a 2D barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeRows() As Long

Return Type

A long value which represents the number of rows to create.

Remarks

The default value is -1.

A value of -1 designates auto determination for both PDF417 and DataMatrix.

For PDF417 barcodes:

The row range is 3 - 90 inclusive.

Note: Rows * columns cannot exceed 928. This is the maximum size of a PDF417 barcode.

For DataMatrix barcodes:

The row ranges are:

  • 10 x 10
  • 12 x 12
  • 14 x 14
  • 16 x 16
  • 18 x 18
  • 20 x 20
  • 22 x 22
  • 24 x 24
  • 26 x 26
  • 32 x 32
  • 36 x 36
  • 40 x 40
  • 44 x 44
  • 48 x 48
  • 52 x 52
  • 64 x 64
  • 72 x 72
  • 80 x 80
  • 88 x 88
  • 96 x 96
  • 104 x 104
  • 120 x 120
  • 132 x 132
  • 144 x 144
  • 8 x 18
  • 8 x 32
  • 12 x 26
  • 12 x 36
  • 16 x 36
  • 16 x 48

Note: This property is not used with 1D barcodes.

See Also

BarcodeXpress Object | Data Matrix | PDF417


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeRows Property

MakeBarcodeRowsCreated Property

Description

Gets the number of rows created in a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeRowsCreated() As Long

Return Type

A long value which represents the number of rows created.

Remarks

If the input rows value from MakeBarcodeRows property is -1, this will be the calculated number of rows for 2D barcodes. Otherwise, the input rows is returned.

See Also

BarcodeXpress Object | MakeBarcodeRows Property


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcode Method | MakeBarcodeBWidth Property | MakeBarcodeBarSize Property | PDF417 | Data Matrix | MakeBarcodeColumns Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeRWidth Property

Description

Gets the width of the image needed to create the barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeRWidth() As Long

Return Type

A long value which represents the width of the image.

Remarks

For 1D barcodes, this property returns the required width of the generated barcode after MakeBarcode is called. The required width is the sum of MakeBarcodeBWidth x 2, MakeBarcodeBarSize x total number of bars, MakeBarcodeValueOGap, and the width of the outside value text font (if any).

For PDF417 2D barcode, the required width is the sum of ((MakeBarcodeColumns + 4) * 17 + 1) * MakeBarcodeBarSize + 2 * the horizontal spacing.

For DataMatrix 2D barcode, the required width is the sum of MakeBarcodeColumns * MakeBarcodeBarSize + 2 * the horizontal spacing.

See Also

BarcodeXpress Object | MakeBarcode Method | MakeBarcodeBWidth Property | MakeBarcodeBarSize Property | PDF417 | Data Matrix | MakeBarcodeColumns Property


%%PageItemTitle%%

BarcodeXpress Object | BC_ShowText Enumeration

MakeBarcodeShowValue Property

Description

Gets and sets whether the barcode value is written as text adjacent to the created barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeShowValue() As BC_ShowText

Return Type

The BC_ShowText value set.

Remarks

The default value is BC_ShowTextAll.

See Also

BarcodeXpress Object | BC_ShowText Enumeration


%%PageItemTitle%%

BarcodeXpress Object | BC_BarcodeStyle Enumeration | SSError Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeStyle Property

Description

Gets and sets the type of barcode to create.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeStyle() As BC_BarcodeStyle

Return Type

The BC_BarcodeStyle value set.

Remarks

The default value is BC_StyleCode39.

When set, this property will verify that the specified type is valid for writing. If not, an unsupported barcode type error will be returned to ErrorCode.

Below are the barcode types which can be written as defined in the BC_BarcodeStyle Enumeration:

  • Industry2of5
  • Interleaved2of5
  • Codabar
  • Code39
  • Code93
  • Code128
  • DataMatrix
  • EAN128
  • EAN13
  • EAN8
  • UPCA
  • UPCE
  • PatchCode
  • PDF417

Note: DataMatrix and PDF417 are only available with the Professional plus 2D Write Edition.

See Also

BarcodeXpress Object | BC_BarcodeStyle Enumeration | SSError Property


%%PageItemTitle%%

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeUPCNotchPercent Property

Description

Notch percent of the barcode for the text value.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeUPCNotchPercent() As Long

Return Type

A long value which represents the notch percent of the barcode.

Remarks

The default value is 10 Percent.

Valid values are from 0 to 50.

Notch percent is only used with certain barcodes where this is standard. The barcode types that support a text notch are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types this value is ignored.

See Also

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcode Method

MakeBarcodeValue Property

Description

String value of the barcode being created.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeValue() As String

Return Type

A string value which represents the barcode being created.

Remarks

This property is required to create a barcode.

When MakeBarcode is called, this string is verified as a valid value for the specified barcode type.

See Also

BarcodeXpress Object | MakeBarcode Method


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeValueGap Property

MakeBarcodeValueGap Property

Description

Gets and sets the amount of gap between the text and barcode when creating a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeValueGap() As Long

Return Type

A long value which represents the gap between the text and barcode.

Remarks

The default value is 5 pixels.

The MakeBarcodeValueGap property value can be positive or negative. Positive values move the value text further away from the bottom of the bars while negatives values move the text closer to the bars, even overlapping.

Warning: In the case where the value text overlaps the barcode, this may prevent the barcode from being recognized.

See Also

BarcodeXpress Object | MakeBarcodeValueGap Property


%%PageItemTitle%%

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeValueLRGap Property

Description

Gets and sets the vertical offset of outside text.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeValueLRGap() As Long

Remarks

The default value is 0 pixels.

A value less than 0 will raise the outside value text above the standard value text. A value greater than 0 will lower the outside value text below the standard value text.

Outside text is only written with certain barcodes where this is standard. The barcode types that support outside text are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types this value is ignored.

Note: Used by supported barcodes only (ie. UPC-A, EAN13), otherwise this value is ignored.

See Also

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN


%%PageItemTitle%%

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeValueOFont Property

Description

Gets and sets the font used to display the UPC values that appear outside of the left and right guard bars.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeValueOFont() As Font

Return Type

The Font value set.

Remarks

The default value is "Arial", 16, Normal.

Outside value text is only written for certain barcodes where this is standard. The barcode types that support a text notch are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types this value is ignored.

See Also

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN


%%PageItemTitle%%

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

MakeBarcodeValueOGap Property

Description

Gets and sets the amount of gap between the outside text and barcode when creating a barcode.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeValueOGap() As Long

Return Type

A long value which represents the gap between the outside text and barcode.

Remarks

The default value is 5 pixels.

Outside text is only written with certain barcodes where this is standard. The barcode types that support a text notch are UPC-A, UPC-E, EAN-8 and EAN-13. For all other types this value is ignored.

Note: Used by supported barcodes only (ie. UPC-A, EAN13), otherwise this value is ignored.

See Also

BarcodeXpress Object | UPC-A | UPC-E | EAN-8 | EAN-13 and JAN


%%PageItemTitle%%

BarcodeXpress Object | MakeBarcodeAutoSize Property

MakeBarcodeWidth Property

Description

Gets and sets the width of the new image in which the created barcode will be drawn.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MakeBarcodeWidth() As Long

Return Type

A long value which represents the width of the new image.

Remarks

The default value is 600 pixels.

This value will be used for the width of the image.

If MakeBarcodeAutoSize is set to True, it will override the MakeBarcodeWidth property value and set the image width to fit the width of the barcode created.

See Also

BarcodeXpress Object | MakeBarcodeAutoSize Property


%%PageItemTitle%%

BarcodeXpress Object

MaxBarcodes Property

Description

Gets and sets the maximum number of barcodes to recognize.

Property type

Read-write property

Syntax (Visual Basic)

Public Property MaxBarcodes() As Integer

Return Type

An integer value which represents the maximum number of barcode to recognize.

Remarks

The default value is 100.

Processing will halt after this number of barcodes has been found.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | AnalyzeBarcode Method

NumBarcodes Property

Description

Gets the number of barcodes recognized.

Property type

Read-write property

Syntax (Visual Basic)

Public Property NumBarcodes() As Integer

Return Type

An integer value which represents the number of barcodes recognized.

Remarks

The AnalyzehDib or AnalyzeIPicture method must be called before checking this property.

See Also

BarcodeXpress Object | AnalyzeBarcode Method


%%PageItemTitle%%

BarcodeXpress Object

Picture Property

Description

This property has been deprecated.

Property type

Read-write property

Syntax (Visual Basic)

Public Property Picture() As Picture

Return Type

A Picture value for use in barcode recognition.

Remarks

This property has been deprecated and replaced by using the AnalyzeIPicture method.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | ErrorCode Property | ErrorDescription Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

RaiseExceptions Property

Description

Determines if errors are raised as exceptions in the application.

Property type

Read-write property

Syntax (Visual Basic)

Public Property RaiseExceptions() As Boolean

Return Type

A boolean value which is True to raise errors as exceptions. Otherwise, False is returned.

Remarks

The default value is True.

If set to True, the component requires an On Error GoTo statement and a label to catch the exception as outlined below:

On Error GoTo ErrorHandler

myControl.RaiseExceptions = True

...

myControl.DoSomething

...

ErrorHandler:

Log "Caught exception from Pegasus control: number = " _

& (Err.Number - vbObjectError) _

& ", description = '" & Err.Description & "'"

To get the last error number and description, use the ErrorCode and ErrorDescription properties.

If set to False, only return the error property results from ErrorCode and/or ErrorDescription.

See Also

BarcodeXpress Object | ErrorCode Property | ErrorDescription Property


%%PageItemTitle%%

BarcodeXpress Object | ReaderAreaWidth Property | ReaderAreaX Property | ReaderAreaY Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ReaderAreaHeight Property

Description

Gets and sets the height of the rectangular area for the recognition engine to analyze for barcode processing.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ReaderAreaHeight() As Long

Return Type

A long which represents the height of the rectangular area.

Remarks

The default value is 0.

This property is used with the ReaderAreaWidth, ReaderAreaX and ReaderAreaY to create the rectangular area on an image for barcode processing. Note: If these properties are all set to 0, then the entire image is automatically searched.

See Also

BarcodeXpress Object | ReaderAreaWidth Property | ReaderAreaX Property | ReaderAreaY Property


%%PageItemTitle%%

BarcodeXpress Object | ReaderAreaHeight Property | ReaderAreaX Property | ReaderAreaY Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ReaderAreaWidth Property

Description

Gets and sets the width of the rectangular area for the recognition engine to analyze for barcode processing.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ReaderAreaWidth() As Long

Return Type

A long which represents the width of the rectangular area.

Remarks

The default value is 0.

This property is used with the ReaderAreaHeight, ReaderAreaX and ReaderAreaY to create the rectangular area on an image for barcode processing. Note: If these properties are all set to 0, then the entire image is automatically searched.

See Also

BarcodeXpress Object | ReaderAreaHeight Property | ReaderAreaX Property | ReaderAreaY Property


%%PageItemTitle%%

BarcodeXpress Object | ReaderAreaWidth Property | ReaderAreaHeight Property | ReaderAreaY Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ReaderAreaX Property

Description

Gets and sets the x (horizontal) coordinate of the rectangular area for the recognition engine to analyze for barcode processing.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ReaderAreaX() As Long

Return Type

A long which represents the x coordinate of the rectangular area.

Remarks

The default value is 0.

This property is used with the ReaderAreaWidth, ReaderAreaHeight and ReaderAreaY to create the rectangular area on an image for barcode processing. Note: If these properties are all set to 0, then the entire image is automatically searched.

See Also

BarcodeXpress Object | ReaderAreaWidth Property | ReaderAreaHeight Property | ReaderAreaY Property


%%PageItemTitle%%

BarcodeXpress Object | ReaderAreaWidth Property | ReaderAreaX Property | ReaderAreaHeight Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ReaderAreaY Property

Description

Gets and sets the y (vertical) coordinate of the rectangular area for the recognition engine to analyze for barcode processing.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ReaderAreaY() As Long

Return Type

A long which represents the y coordinate of the rectangular area.

Remarks

The default value is 0.

This property is used with the ReaderAreaWidth, ReaderAreaX and ReaderAreaHeight to create the rectangular area on an image for barcode processing. Note: If these properties are all set to 0, then the entire image is automatically searched.

See Also

BarcodeXpress Object | ReaderAreaWidth Property | ReaderAreaX Property | ReaderAreaHeight Property


%%PageItemTitle%%

BarcodeXpress Object

ReaderScanDistance Property

Description

Gets and sets the scan distance in pixels between line sweeps when searching for 1D barcodes.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ReaderScanDistance() As Long

Remarks

The default value is 5.

Valid values are between 1 and 10.

Reducing this value can help in finding barcodes which are short relative to their height.

See Also

BarcodeXpress Object


%%PageItemTitle%%

BarcodeXpress Object | GetBarcode Method

ResultLen Property

Description

Gets the length of the result string.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ResultLen() As Integer

Return Type

An integer value which represents the length of the result string.

Remarks

The current barcode is determined by the GetBarcode method.

If the form of the information is a simple string then the length is the string length plus one to include the terminating null byte.

See Also

BarcodeXpress Object | GetBarcode Method


%%PageItemTitle%%

BarcodeXpress Object | BarcodeResultStyle Property | BC_BarcodeStyle Enumeration | BarcodeResult Property | BarcodeType Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

ReturnPossibleBarcodes Property

Description

Include possible barcodes in the result list.

Property type

Read-write property

Syntax (Visual Basic)

Public Property ReturnPossibleBarcodes() As Boolean

Return Type

A boolean value which is set to True to include possible barcodes in the result list. Otherwise, False is returned.

Remarks

The default value is False.

When True, the barcode engine returns in the results list, candidate barcodes which could not be decoded.

For 1D barcodes, any unsolved regions of interest in the barcode result list will have a BarcodeResultStyle of BC_StyleUnknown and the BarcodeResult property will be NULL.

For PostNet, OneCode, Australian Post and Royal Post 4 and 2D barcodes including DataMatrix, PDF417, and QRcode, the currently selected BarcodeType is returned as the candidate region type.

See Also

BarcodeXpress Object | BarcodeResultStyle Property | BC_BarcodeStyle Enumeration | BarcodeResult Property | BarcodeType Property


%%PageItemTitle%%

BarcodeXpress Object | Debug Your Application | ErrorCode Property

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

SSError Property

Description

This property is being deprecated and replaced by the ErrorCode property.

Property type

Read-write property

Syntax (Visual Basic)

Public Property SSError() As Integer

Remarks

This property is being deprecated and replaced by the ErrorCode property.

See Also

BarcodeXpress Object | Debug Your Application | ErrorCode Property


%%PageItemTitle%%

BarcodeXpress Object | ErrorDescription Property

SSErrorMsg Property

Description

This property is being deprecated and replaced by the ErrorDescription property.

Property type

Read-write property

Syntax (Visual Basic)

Public Property SSErrorMsg() As String

Remarks

This property is being deprecated and replaced by the ErrorDescription property.

See Also

BarcodeXpress Object | ErrorDescription Property


%%PageItemTitle%%

BarcodeXpress Object | Industry 2 of 5 | Interleaved 2 of 5 | Code 39 | Code 39 Extended | Checksums

See Also Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

WriteChecksumChar Property

Description

Gets and sets the checksum write flag for barcodes that optionally use checksums.

Property type

Read-write property

Syntax (Visual Basic)

Public Property WriteChecksumChar() As Integer

Return Type

An integer value which represents the checksum flag.

Remarks

The default value is 0 (False).

A value of 1 will write optional checksums, and a value of 0 will not write optional checksums.

Currently, of the supported barcode types that Barcode Xpress is able to write, only types Industry 2 of 5, Interleaved 2 of 5, Code 39, and Code 39 Extended will allow an optional checksum. This property is ignored for other barcode types that require checksums.

Note: The UPC and EAN barcodes always append a checksum character to the barcode results regardless of this properties value.

See Also

BarcodeXpress Object | Industry 2 of 5 | Interleaved 2 of 5 | Code 39 | Code 39 Extended | Checksums


%%PageItemTitle%%

AustralianPostCustomDecodeMode Property

BC_AustralianPostCustomDecodeType Enumeration

Description

The Australian Post 4 State barcode supports a custom section in both the Customer Barcode 2 and Customer Barcode 3 formats.

Members

Member | Description
BC_BarStates | Returns the bar states of the custom section. This will be a string of A D F T values, where A - Ascending Bar D - Descending Bar F - Full Bar T - Tracking Bar
BC_TableN | The bars in the custom section are decoded using the "N" Table defined by the Australian Post 4 State Barcode specification. This will result in numeric values, for the custom section, of the barcode value.
BC_TableC | The bars in the custom section are decoded using the "C" Table defined by the Australian Post 4 State Barcode specification. This will result in Alphanumeric values, for the custom section, of the barcode value.
BC_NoCustomDecode | No custom decode type.

Remarks

The recommended bar encodings in this section is either Table-N or Table-C encoding, but the customer is also free to put their own encoding in this section. The type of encoding, in the custom section, is not stored in the barcode format. The end customer must know the encoding prior to decoding the barcode.

See Also

AustralianPostCustomDecodeMode Property


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_BarcodeStyle Enumeration

Description

Specifies a barcode type.

Members

Member | Description
BC_StyleUnknown | Indicates an unknown barcode.
BC_StyleIndustry2of5 | Indicates an Industry 2 of 5 barcode type.
BC_StyleInterleaved2of5 | Indicates an Interleaved 2 of 5 barcode type.
BC_StyleIATA2of5 | Indicates an IATA 2 of 5 barcode type.
BC_StyleDataLogic2of5 | Indicates a DataLogic 2 of 5 barcode type.
BC_StyleInvert2of5 | Indicates an Inverted 2 of 5 barcode type.
BC_StyleBCDMatrix | Indicates a BCD Matrix barcode type.
BC_StyleMatrix2of5 | Indicates a Matrix 2 of 5 barcode type.
BC_StyleCode32 | Indicates a Code 32 barcode type.
BC_StyleCode39 | Indicates a Code 39 barcode type.
BC_StyleCode39Extended | Indicates a Code 39 Extended barcode type.
BC_StyleCodabar | Indicates a Codabar barcode type.
BC_StyleCode93 | Indicates a Code 93 barcode type.
BC_StyleCode93Extended | Indicates a Code 93 Extended barcode type.
BC_StyleCode128 | Indicates a Code 128 barcode type.
BC_StyleEAN13 | Indicates an EAN-13 barcode. This also supports a JAN barcode which is an EAN-13 with country code 49.
BC_StyleEAN8 | Indicates an EAN-8 barcode type.
BC_StyleUPCA | Indicates a UPC-A barcode type.
BC_StyleUPCE | Indicates a UPC-E barcode type.
BC_StyleAdd5 | Indicates an Add 5 barcode type.
BC_StyleAdd2 | Indicates an Add 2 barcode type.
BC_StyleEAN128 | Indicates an EAN-128 barcode type.
BC_StylePatchCode | Indicates a Patch Code.
BC_StylePostNet | Indicates a PostNet barcode type.
BC_StylePDF417 | Indicates a PDF417 barcode type.
BC_StyleDataMatrix | Indicates a DataMatrix barcode type.
BC_StyleQRCode | QR Code barcode.
BC_StyleIntelligentMail | United States Postal IntelligentMail 4 State barcode.
BC_StyleRoyalPost4State | Royal Post 4 State barcode.
BC_StyleAustralian4State | Australian Post 4 State barcode


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_Edition Enumeration

Description

Specifies the edition of the control.

Members

Member | Description
BC_EditionStandard | Standard Edition. This edition reads approximately 20 barcodes per second, or no more than 80% of the fastest speed possible on the CPU, whichever is slower. Read and Write of all 1D barcodes is supported. Read of 2D is NOT supported.
BC_EditionProfessional | Professional Edition. This edition reads as fast as the processor can handle. Read and Write of all 1D barcodes is supported. Read of 2D barcodes is supported. This edition also supports creation of applications that read at Standard and Professional speeds using the LicenseEdition property.
BC_EditionProfessionalPlus2DWrite | In addition to all the features the regular Professional edition supports including unlimited speed, this new edition also includes the ability to write PDF417 and DataMatrix 2D barcodes.

Remarks

The default value is BC_EditionProfessionalPlus2DWrite.

Note: In order to move from the default BC_EditionProfessional to BC_EditionProfessionalPlus2DWrite, follow the same steps outlined in 'Moving from Trial to Paid Licensing'.


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_ErrorLevels Enumeration

Description

Defines the amount of error information to write to the DebugLogFile.

Members

Member | Description
BC_Production | Place minimal information into the DebugLogFile.
BC_Development | Place information into the DebugLogFile that is useful during normal development using this component.
BC_Detailed | Place as much information into the DebugLogFile as possible. You should use this option when you are tracking down a problem.

Remarks

The default value is BC_Production.

This enumeration allows you to specify the amount of detail to place into the DebugLogFile and can be set by the ErrorLevel property.


%%PageItemTitle%%

EvaluationMode Property | Trial Mode

BC_EvaluationMode Enumeration

Description

The evaluation choice of the component.

Members

Member | Description
BC_EvalModeTrialDialog | Automatic evaluation mode. When possible, this component will automatically detect that it is running without a user interface and switch to another evaluation mode. Otherwise, it will display the evaluation mode dialog box.
BC_EvalModeTimeOut | Timeout evaluation mode. When running in evaluation mode, this component will timeout after 5 minutes instead of displaying the evaluation mode dialog box. This is the appropriate evaluation mode for applications that have no user interface.

Remarks

To simplify your evaluation of this component, Pegasus Imaging Corporation has implemented an evaluation mode. Normally, this mode will display a dialog box reminding you that you are using evaluation mode. In certain environments with no user interface, such as services, displaying a dialog box will cause the application to stop and you must change the evaluation mode to avoid that problem.

Note: In addition to a dialog box displaying while using the trial version, Barcode Xpress will randomly replace portions of text in the output with "www.PegasusImaging.com".

See Also

EvaluationMode Property | Trial Mode


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_ImageSource Enumeration

Description

Specifies the source from which to load the bitmap for barcode recognition.

Members

Member | Description
BC_ImageSourceDIB | Value = 0. The default Image Source. Loads bitmap from the hDIB property.
BC_ImageSourcePicture | Value = 1. Loads bitmap from the Picture property.
BC_ImageSourceClipboard | Value = 2. Loads bitmap from the Windows system clipboard.


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_InkColor Enumeration

Description

Specifies the ink color for barcodes search.

Members

Member | Description
BC_InkColorUnknown | Both black and white ink color barcodes will be searched.
BC_InkColorBlack | Black ink colored barcodes will be searched. This is the default.
BC_InkColorWhite | White ink colored barcodes will be searched.

Remarks

The default value is BC_InkColorBlack.

To improve recognition and speed by reducing search criteria, set this property correctly.


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_Orientation Enumeration

Description

Specifies the orientation for the barcode search.

Members

Member | Description
BC_OrientationBoth | Barcodes with both a vertical and horizontal orientation will be searched.
BC_OrientationHorizontalVertical | Barcodes with horizontal and vertical orientation are searched.
BC_OrientationHorizontal | Barcodes with only a horizontal orientation will be searched.
BC_OrientationVertical | Barcodes with only a vertical orientation will be searched.
BC_OrientationHorizontalVerticalDiagonal | Barcodes with horizontal, vertical and diagonal are searched.

Remarks

The default value is BC_OrientationBoth.

To improve recognition and speed by reducing search criteria, set this property correctly.


%%PageItemTitle%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

BC_ShowText Enumeration

Description

Specifies the text to display adjacent to the created barcode.

Members

Member | Description
BC_ShowTextNone | No text is displayed.
BC_ShowTextValue | Only the value is displayed.
BC_ShowTextValueAndCheckSum | The value and check sum is displayed.
BC_ShowTextAll | All possible text is displayed.

Remarks

The default value is BC_ShowTextAll.


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Empty Index Entry

Empty Index Entry

The index entry you selected has no target topics associated with it.

If you have chosen a parent entry, please select a child entry.


%%ItemTitle%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Topic Not Found

Topic Not Found

The link you just clicked was not able to connect to the target page.

Some possible reasons and remedies are as follows:

Reason | Remedy
Destination topic is not part of the area you specified in the Filtered by field. | Either select another filter or select (no filter).
The URL of the destination topic is incorrect or has changed. | Use the index or the search function instead.
Problems with the help installation. | Rerun Setup for the product this help is related to and select the 'Repair' option.

Additional help is available for filters, search, and the index.

Click Back to return to the page you were on.

The target parameters are:

Keyword:
Index Moniker:
URL:


%%ItemTitle%%

Glossary Item Box

AustralianPostCustomDecodeMode Property | BC_AustralianPostCustomDecodeType Enumeration

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Australian Post 4 State Barcode

Below is an example of the Australian 4-state Postal Code.

The Australian Post 4 State barcode is a 4 state barcode. It supports four different formats:

    1. Standard
    2. Customer Barcode 2
    3. Customer Barcode 3
    4. Reply Paid Barcode

The Customer Barcodes 2 & 3 include a customer field for encoding data. This barcode also supports the Reed-Solomon error correction scheme.

Format Control Field

The Format Control Field is a 2 digit field identifying the barcode type:

  • 11 - Standard Customer Barcode
  • 59 - Customer Barcode 2
  • 62 - Customer Barcode 3
  • 45 - Reply Paid Barcode

The Customer Barcodes 2 & 3 include a customer field for encoding data. This barcode also supports the Reed-Solomon error correction scheme.

Sorting Code

The Sorting Code is an 8 character sorting code (Delivery Point ID)

Customer Information

There is a free format area available in the Customer Barcodes 2 & 3. This will be decoded using the BC_AustrailianPostCustomDecodeType.

  • If the decode mode is "BarStates", then the output will be either bar state "F" full bar, "T" tracker bar, "A" ascending bar or "D" descending bar.
  • If the decode mode is "TableN" then the output will be decoded using the numeric decoding defined in the Australian Post specification.
  • If the decode mode is "TableC" then the output will be decoded using the character decoding defined in the Australian Post specification.
  • Use the no custom decode if the decode mode has no custom decode type.

Note: If the FCC code is not valid, the confidence will be decreased by 10%.

See Also

AustralianPostCustomDecodeMode Property | BC_AustralianPostCustomDecodeType Enumeration


%%ItemTitle%%

Glossary Item Box

BarcodeType Property | BC_BarcodeStyle Enumeration

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

British Royal Post 4 State Barcode

The United Kingdom has implemented a new 4-state barcode referred to as the Royal Mail 4-State Customer Code (RM4SCC).

An example is shown below:

This barcode type is used by the British Royal Post. It encodes 5, 6, or 7 character post codes along with a two character Delivery Point Suffix (DPS). A checksum character is included to verify the barcode read.

See Also

BarcodeType Property | BC_BarcodeStyle Enumeration


%%Variable%%

Glossary Item Box

PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

Glossary

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


%%phrase%%

PegasusImaging.ActiveX.BarcodeXpress Send comments on this topic.

Documentation Overview

Description

Pegasus Imaging BarcodeXpress v5.0

Projects

Project | Description
PegasusImagingActiveXBarcodeXpress5 | Pegasus Imaging BarcodeXpress v5.0


%%phrase%%

Pegasus Imaging BarcodeXpress v5.0 Send comments on this topic.

Project Overview

Description

Pegasus Imaging BarcodeXpress v5.0

Classes

Class Module | Description
BarcodeXpress | BarcodeXpress Class

Public Enumerations

Enumeration | Description
BC_AustralianPostCustomDecodeType | The Australian Post 4 State barcode supports a custom section in both the Customer Barcode 2 and Customer Barcode 3 formats.
BC_BarcodeStyle | Specifies a barcode type.
BC_Edition | Specifies the edition of the control.
BC_ErrorLevels | Defines the amount of error information to write to the DebugLogFile.
BC_EvaluationMode | The evaluation choice of the component.
BC_ImageSource | Specifies the source from which to load the bitmap for barcode recognition.
BC_InkColor | Specifies the ink color for barcodes search.
BC_Orientation | Specifies the orientation for the barcode search.
BC_ShowText | Specifies the text to display adjacent to the created barcode.


%%PageItemTitle%%

Enumerations Members

Enumerations Object

For a list of all members defined in this module, see Enumerations members.

See Also

Enumerations Members


%%PageItemTitle%% $$Members$$

Enumerations Overview

Enumerations Object Members

See Also

Enumerations Overview


%%ItemTitle%%

Glossary Item Box

Checksums | PostNet

See Also PegasusImaging.ActiveX.BarcodeXpress5 Send comments on this topic.

U.S. Postal OneCode

The USPS is adopting a new 4-state 1D barcode that includes more address information than the current code. A sample is shown below. Further information can be found at the USPS Web site: http://ribbs.usps.gov/onecodesolution/.

The Onecode Solution combines information currently found in the PostNet and Planet barcodes. The length of the barcode is fixed at 65 bars. It also contains a CRC-Checksum for verifying the barcode value. There is no error correction. The output of the barcode is a 20, 25, 29 or 31 digit string (0, 5, 9 or 11 digit zip code) containing the following data:

(© USPS-B-3200,Pages 4-5,file:SPUSPS-B3200B001.pdf)

Statistics

  • The barcode identifier is a 2 digit field assigned by the USPS. The first digit ranges from 0-9 and the second digit ranges from 0-4.
  • Special services include a 3 digit field assigned by the USPS for any special services which range from 000-999.
  • The customer identifier is a 9 digit field assigned by the USPS and is unique for each customer. The range is from 000000000-999999999.
  • The sequence number is a 9 digit field assigned by the mailer for tracking mail pieces which range from 000000000-999999999.
  • The zip code is a 0, 5, 9, or 11 digit zip code which range from none, 00000-99999, 000000000-999999999, 00000000000-99999999999.
See Also

Checksums | PostNet