Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.6.22
|
Leadtools.Barcode.Deprecated Namespace > BarcodeEngine Class : Read Method |
public RasterCollection<BarcodeData> Read( RasterImage image, LeadRect searchRectangle, BarcodeSearchTypeFlags searchType, BarcodeUnit units, BarcodeReadFlags flags, int multipleMaxCount, Barcode1d code1d, BarcodeReadPdf codePdf, BarcodeColor codeColor )
'Declaration
Public Function Read( _ ByVal image As RasterImage, _ ByVal searchRectangle As LeadRect, _ ByVal searchType As BarcodeSearchTypeFlags, _ ByVal units As BarcodeUnit, _ ByVal flags As BarcodeReadFlags, _ ByVal multipleMaxCount As Integer, _ ByVal code1d As Barcode1d, _ ByVal codePdf As BarcodeReadPdf, _ ByVal codeColor As BarcodeColor _ ) As RasterCollection(Of BarcodeData)
'Usage
Dim instance As BarcodeEngine Dim image As RasterImage Dim searchRectangle As LeadRect Dim searchType As BarcodeSearchTypeFlags Dim units As BarcodeUnit Dim flags As BarcodeReadFlags Dim multipleMaxCount As Integer Dim code1d As Barcode1d Dim codePdf As BarcodeReadPdf Dim codeColor As BarcodeColor Dim value As RasterCollection(Of BarcodeData) value = instance.Read(image, searchRectangle, searchType, units, flags, multipleMaxCount, code1d, codePdf, codeColor)
public RasterCollection<BarcodeData> Read( RasterImage image, LeadRect searchRectangle, BarcodeSearchTypeFlags searchType, BarcodeUnit units, BarcodeReadFlags flags, int multipleMaxCount, Barcode1d code1d, BarcodeReadPdf codePdf, BarcodeColor codeColor )
function Leadtools.Barcode.Deprecated.BarcodeEngine.Read( image , searchRectangle , searchType , units , flags , multipleMaxCount , code1d , codePdf , codeColor )
This method supports all images currently supported by LEADTOOLS.
Use this method to recognize barcode data.
To determine whether a barcode element is duplicated or not, use BarcodeData.IsDuplicated property.
If the barcode is duplicated, you can get it by calling the BarcodeData.DuplicatedIndex method and to get the next duplicated barcode call the BarcodeData.GetNextDuplicated method.
If you know the index of a duplicated barcode, you can get the first duplicate of that barcode by calling the GetFirstDuplicatedIndex method.
When the flags parameter is set to BarcodeReadFlags.UseColors, then this method will use the codeColor parameter, otherwise the method will ignore it and use the default colors of black for bars and white for spaces.
Using colors does not apply for 1 bit per pixel images.
The BarcodeReadFlags.UseColors flag is used with all barcode types.
The BarcodeReadFlags.ReturnCheck flag is used only with reading linear barcodes.
The smallest Data Matrix symbol size is 40 pixels by 40 pixels.
It can be read using BarcodeSearchTypeFlags.DatamatrixReadSmall since this enables the reading of Data Matrix symbols that are between 20 to 40 pixels in size.
The Linear barcodes are not supported in UNICODE text.
When calling this method with the ReturnFourPoints flag set, the Location property will be updated with the coordinates of the four corners of the barcode rather than the coordinates of the bounding rectangle. These coordinates are encoded values and must be decoded before they can be used. The following example shows how to decode the four-point corner values:Point p1, p2, p3, p4; int nStartX = barData.Location.Left; int nStartY = barData.Location.Top; int nWidth = barData.Location.Right - nStartX; int nHeight = barData.Location.Bottom - nStartY; p1.X = (nStartX And 0xffff); p1.Y = (nStartX >> 16); p2.X = (nStartY And 0xffff); p2.Y = (nStartY >> 16); p3.X = (nWidth And 0xffff); p3.Y = (nWidth >> 16); p4.X = (nHeight And 0xffff); p4.Y = (nHeight >> 16);
Reading Linear Barcodes (1D):
A barcode is composed of a start mark, data, and the end mark. Reading barcodes from left to right (setting the Direction property to BarcodeDirectionFlags.LeftToRight value) or from right to left (setting the Direction property to BarcodeDirectionFlags.RightToLeft value) will produce the same result in most cases, because the barcode reader engine recognizes the start and end marks, and handles the data accordingly. For example, if BarcodeDirectionFlags.LeftToRight is used and the user reads barcodes from left to right (the barcode is not rotated), the engine will recognize the start mark first, then the data, and finally the end mark. But if the user reads barcodes from right to left (the barcode is rotated 180 degrees), the engine will first recognize the end mark, then read the (reverse-order) data, and then recognize the start mark. In this case, the engine will flip the data to normal (start/data/end) order.