GdPicture.NET.14
GdPicture14 Namespace / GdPictureImaging Class / BarcodeDataMatrixReaderDoScan Method / BarcodeDataMatrixReaderDoScan(Int32,BarcodeDataMatrixReaderScanMode,Int32,Boolean) Method
A unique image identifier of the GdPicture image representing the image in use.
A member of the BarcodeDataMatrixReaderScanMode enumeration. The scan mode (speed or quality) used for scanning process.
Specifies the number of barcodes expected to be detected. Use 0 to find all available barcodes within an image.
If this is set to true and ExpectedCount > 0, the recognition process stops after first ExpectedCount barcodes were found.
Example





In This Topic
BarcodeDataMatrixReaderDoScan(Int32,BarcodeDataMatrixReaderScanMode,Int32,Boolean) Method
In This Topic
Starts a barcode recognition process on a specified GdPicture image or on an area of a specified GdPicture image defined by the SetROI method.
Syntax
'Declaration
 
Public Overloads Function BarcodeDataMatrixReaderDoScan( _
   ByVal ImageID As Integer, _
   ByVal ScanMode As BarcodeDataMatrixReaderScanMode, _
   ByVal ExpectedCount As Integer, _
   ByVal StopOnExpectedCount As Boolean _
) As GdPictureStatus
public GdPictureStatus BarcodeDataMatrixReaderDoScan( 
   int ImageID,
   BarcodeDataMatrixReaderScanMode ScanMode,
   int ExpectedCount,
   bool StopOnExpectedCount
)
public function BarcodeDataMatrixReaderDoScan( 
    ImageID: Integer;
    ScanMode: BarcodeDataMatrixReaderScanMode;
    ExpectedCount: Integer;
    StopOnExpectedCount: Boolean
): GdPictureStatus; 
public function BarcodeDataMatrixReaderDoScan( 
   ImageID : int,
   ScanMode : BarcodeDataMatrixReaderScanMode,
   ExpectedCount : int,
   StopOnExpectedCount : boolean
) : GdPictureStatus;
public: GdPictureStatus BarcodeDataMatrixReaderDoScan( 
   int ImageID,
   BarcodeDataMatrixReaderScanMode ScanMode,
   int ExpectedCount,
   bool StopOnExpectedCount
) 
public:
GdPictureStatus BarcodeDataMatrixReaderDoScan( 
   int ImageID,
   BarcodeDataMatrixReaderScanMode ScanMode,
   int ExpectedCount,
   bool StopOnExpectedCount
) 

Parameters

ImageID
A unique image identifier of the GdPicture image representing the image in use.
ScanMode
A member of the BarcodeDataMatrixReaderScanMode enumeration. The scan mode (speed or quality) used for scanning process.
ExpectedCount
Specifies the number of barcodes expected to be detected. Use 0 to find all available barcodes within an image.
StopOnExpectedCount
If this is set to true and ExpectedCount > 0, the recognition process stops after first ExpectedCount barcodes were found.

Return Value

A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK. We strongly recommend always checking this status first.
Remarks
For more details, please refer to our Barcode Recognition Sample included in the installation folder that demonstrates the usage of this method.

This method requires the Barcode Reading & Writing component to run.

Example
Finding DataMatrix barcodes in an image and writes complete barcodes info into a file.
using (GdPictureImaging gdpictureImaging = new GdPictureImaging())
{
    int imageID = gdpictureImaging.CreateGdPictureImageFromFile("image.jpg", false);
 
    // Perform scanning at best speed, ignoring very damaged barcodes.
    BarcodeDataMatrixReaderScanMode mode = BarcodeDataMatrixReaderScanMode.BestSpeed;
 
    // Start the DataMatrix scanning process looking for a single barcode and write info into a text file.
    gdpictureImaging.BarcodeDataMatrixReaderDoScan(imageID, mode, 1, true);
 
    using (System.IO.StreamWriter file = new System.IO.StreamWriter("DataMatrix.txt"))
    {
        int barcodesFound = gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeCount();
 
        for (int i = 1; i <= barcodesFound; i++)
        {
            // Decoded information.
            file.WriteLine("Decoded info = " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeValue(i));
 
            // The skew angle of the barcode, in degrees.
            file.WriteLine("Skew angle = " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeSkewAngle(i));
 
            // The number of rows of the barcode.
            file.WriteLine("Rows = " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeRows(i));
 
            // The number of columns of the barcode.
            file.WriteLine("Columns = " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeColumns(i));
 
            // The raw bytes decoded. It was post-processed to find the correct decoded info based on detected Encoding.
            file.WriteLine("Raw bytes = " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeValueRAW(i));
 
            // The barcode position, given by the coordinates of the corners.
            file.WriteLine("Position =  Top-Left=["
                + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeX1(i) + ", " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeY1(i)
                + "] Top-Right=[" + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeX2(i) + ", " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeY2(i)
                + "] Bottom-Right=[" + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeX3(i) + ", " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeY3(i)
                + "] Bottom-Left=[" + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeX4(i) + ", " + gdpictureImaging.BarcodeDataMatrixReaderGetBarcodeY4(i) + "]");
        }
    }
 
    // Release used resources.
    gdpictureImaging.BarcodeDataMatrixReaderClear();
    gdpictureImaging.ReleaseGdPictureImage(imageID);
}
See Also