Dynamsoft Barcode SDK
Introduction to barcode recognition
- How barcode recognition is done
The barcode is a type of image designed for storing information to be read by a computer. For data to be read by a computer, barcode recognition software is required. Barcode recognition software works by using complicated and accurate computer vision techniques to take the image and turn it into text, numbers, binary data, or whatever type of information was stored in it initially.
Different barcode types are used to encode different types of data, and the appropriate one should be selected for the user’s purposes. There are a vast amount of barcode types in existence. However only a much smaller subset exists in modern usage.
- Types of barcodes
Initially, one-dimensional barcodes were used, where information is encoded based on the widths and offsets of the bars. Some formats also include bar heights in the encoding. An example is the Code 128 barcode format:
One dimensional barcode is still used extensively today for many purposes, especially in retail stores for checking-out products.
Recently, two-dimensional barcodes have become popular for their ability to store more information more efficiently. A two-dimensional barcode may appear as a box containing dots, rectangles, lines, or other structures. An example of this is the QR Code, which may be familiar to mobile phone users:
QR codes are often used to encode URLs but can be used for text, phone numbers, or any other kind of alphanumeric data.
- Speed and practicality
As anyone who has ever shopped at a grocery store knows, barcode recognition is a very fast process and can be done by a computer almost instantly once an image has been provided. Some barcode formats require the image to be properly rotated, but modern recognition tools can detect rotated barcodes as well. The extensive use of barcodes in a vast amount of fields including security, item identification, and entrance passes attests to the reliability and practicality of barcodes, which is a proven technology that has been in use since the 1970s.
How barcode recognition can be used
- As an input method
Even as computers get faster and faster, overall speed is still limited by the slow speed of input. Even with a typing speed of a hundred words per minute, the computer is always waiting, but this isn’t a problem with barcodes. Barcode recognition is most commonly known for its use as an input system, where encoded data is read back from a barcode reading device. The most common scenario is in checkout for a retail store. An item is scanned by a barcode scanner, and its name, cost, and other information are read by the computer. Since an item can be scanned in a split second, barcodes are an input method that beats any other type of input method for speed.
- Ticket identification
Picture the scenario where a company is sending personalized coupons to valuable customers. The company can produce a unique barcode ID which is printed on each coupon. When the coupon is brought in by the customer, the barcode scanning system reads the code and notifies the system. The system now knows that the coupon was used, and by whom. Not only can this unique code be used to prevent multiple usages of the same coupon, but also it can be used for the archiving of valuable marketing information. The system now knows that this customer is interested in similar coupons.
- Form processing
Barcodes are extremely powerful when combined with form processing techniques. They save employees from manually categorizing and processing received forms. When forms are printed to be filled, they can contain information stored in a barcode such as a form type, due date, office name, and employee name. Then when scanned, the document can automatically be identified, and categorized into the proper office category and marked as printed by a certain employee. The document’s date can also be used to archive it appropriately. Barcodes are used continuously in archiving work because they are simple, reliable, and powerful.
- The need for barcode recognition in the business
All three above usage scenarios are only a small subset of those situations where barcodes can be used in business. The more creative companies get, the more useful barcodes become. All three above methods save vast amounts of employee time and therefore save companies vast amounts of money. Thus implementing barcode recognition is a decision that every company can afford to make.
Dynamsoft Barcode SDK
- What is the Dynamsoft Barcode SDK
The Dynamsoft Barcode SDK is a robust and complete software package for C# developers aiming to take advantage of barcode recognition. As a software development kit, it allows developers to skip the time-consuming details and get the results they need. It provides an intuitive interface that allows for the reading of images of different sizes and offsets and using the public ZXing open source library as its base. It supports all the best barcode formats.
- Extensions to ZXing
ZXing is a library written in Java, and thus it does things the Java way. Ports to other languages suffer from a lack of the natural style of the target language, and many ports, including the C# port, are incomplete and buggy. The C# port even lacks support for the Aztec barcode format. The Dynamsoft Barcode SDK takes everything that’s missing in ZXing and makes it into a complete, easy to use C# SDK to save developers headaches and improve recognition.
- Supported formats
The Dynamsoft Barcode SDK supports a great variety of the most commonly used barcode types.
- 1D Format (Vertical bars)
- 2D Format
- Code 39
- Code 93
- Code 128
- QR Code
- EAN -13
RSS-14 (GS1 DataBar)
- Integration with TWAIN SDKs
The Dynamsoft Barcode SDK can be integrated with the Dynamic .NET TWAIN / Dynamic Web TWAIN SDK that many developers are already familiar with. Gaining access to the powerful features of barcode recognition requires the activation of the Dynamsoft Barcode SDK add-on. As an add-on, it is flexible, and the developer can choose whether or not to activate its features and can select a license that is appropriate for their needs.