GdPicture.NET.14
GdPicture14 Namespace / GdPictureImaging Class / BarcodeQRReaderDoScan Method / BarcodeQRReaderDoScan(Int32,BarcodeQRReaderScanMode,Int32,Boolean) Method
A unique image identifier of the GdPicture image representing the image in use.
A member of the BarcodeAztecReaderScanMode 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 true and ExpectedCount > 0, the recognition process stops after first ExpectedCount barcodes were found.
Example





In This Topic
BarcodeQRReaderDoScan(Int32,BarcodeQRReaderScanMode,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. Starts a barcode recognition process on a GdPicture image or on an area of a GdPicture image using different parameters according to what you have specified. This method allows you to set the scanning mode parameter as well as to define the required number of barcodes the engine should detect.
Syntax
'Declaration
 
Public Overloads Function BarcodeQRReaderDoScan( _
   ByVal ImageID As Integer, _
   ByVal ScanMode As BarcodeQRReaderScanMode, _
   ByVal ExpectedCount As Integer, _
   ByVal StopOnExpectedCount As Boolean _
) As GdPictureStatus
public function BarcodeQRReaderDoScan( 
    ImageID: Integer;
    ScanMode: BarcodeQRReaderScanMode;
    ExpectedCount: Integer;
    StopOnExpectedCount: Boolean
): GdPictureStatus; 
public function BarcodeQRReaderDoScan( 
   ImageID : int,
   ScanMode : BarcodeQRReaderScanMode,
   ExpectedCount : int,
   StopOnExpectedCount : boolean
) : GdPictureStatus;

Parameters

ImageID
A unique image identifier of the GdPicture image representing the image in use.
ScanMode
A member of the BarcodeAztecReaderScanMode 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 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 QrCodes in an image and writeing complete barcodes info into a file.
using (GdPictureImaging gdpictureImaging = new GdPictureImaging())
{
    int imageID = gdpictureImaging.CreateGdPictureImageFromFile("image.jpg", false);
 
    // Set to 0, so all the QR Codes in the image should be found.
    int expectedBarcodes = 0;
 
    // Perform scanning at best speed, ignoring very damaged barcodes.
    BarcodeQRReaderScanMode mode = BarcodeQRReaderScanMode.BestSpeed;
 
    // Start the QrCode scanning process and write complete info into a text file.
    gdpictureImaging.BarcodeQRReaderDoScan(imageID, mode, expectedBarcodes);
 
    using (System.IO.StreamWriter file = new System.IO.StreamWriter("QrCodes.txt"))
    {
        int barcodesFound = gdpictureImaging.BarcodeQRReaderGetBarcodeCount();
 
        for (int i = 1; i <= barcodesFound; i++)
        {
            // Decoded information.
            file.WriteLine("Decoded info = " + gdpictureImaging.BarcodeQRReaderGetBarcodeValue(i));
 
            // Confidence in result, in percentage (values from 0 to 100).
            file.WriteLine("Confidence = " + gdpictureImaging.BarcodeQRReaderGetBarcodeConfidence(i));
 
            // The version of a Qr Code, in range 0-40. The higher the version, the larger the barcode is.
            file.WriteLine("Version = " + gdpictureImaging.BarcodeQRReaderGetVersion(i));
 
            // The skew angle of the barcode, in degrees.
            file.WriteLine("Skew angle = " + gdpictureImaging.BarcodeQRReaderGetBarcodeSkewAngle(i));
 
            // The raw bytes decoded. It was post-processed to find the correct decoded info based on detected Encoding.
            file.WriteLine("Raw bytes = " + gdpictureImaging.BarcodeQRReaderGetBarcodeValueRAW(i));
 
            // The barcode position, given by the coordinates of the corners.
            file.WriteLine("Position =  Top-Left=["
                + gdpictureImaging.BarcodeQRReaderGetBarcodeX1(i) + ", " + gdpictureImaging.BarcodeQRReaderGetBarcodeY1(i)
                + "] Top-Right=[" + gdpictureImaging.BarcodeQRReaderGetBarcodeX2(i) + ", " + gdpictureImaging.BarcodeQRReaderGetBarcodeY2(i)
                + "] Bottom-Right=[" + gdpictureImaging.BarcodeQRReaderGetBarcodeX3(i) + ", " + gdpictureImaging.BarcodeQRReaderGetBarcodeY3(i)
                + "] Bottom-Left=[" + gdpictureImaging.BarcodeQRReaderGetBarcodeX4(i) + ", " + gdpictureImaging.BarcodeQRReaderGetBarcodeY4(i) + "]");
        }
    }
 
    // Release used resources.
    gdpictureImaging.BarcodeQRReaderClear();
    gdpictureImaging.ReleaseGdPictureImage(imageID);
}
See Also