BarcodeDetector: detect() method
        
        
          Limited availability
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The detect() method of the
BarcodeDetector interface returns a Promise which fulfills
with an Array of detected barcodes within an image.
Syntax
detect(imageBitmapSource)
Parameters
- imageBitmapSource
- 
Receives an image source as a parameter. This can be a HTMLImageElement, aSVGImageElement, aHTMLVideoElement, aHTMLCanvasElement, anImageBitmap, anOffscreenCanvas, aVideoFrame, aBlobof type image or anImageDataobject.
Return value
Returns a Promise which fulfills with an array of
DetectedBarcode objects with the following properties:
- boundingBox
- 
A DOMRectReadOnly, which returns the dimensions of a rectangle representing the extent of a detected barcode, aligned with the image.
- cornerPoints
- 
The x and y co-ordinates of the four corner points of the detected barcode relative to the image, starting with the top left and working clockwise. This may not be square due to perspective distortions within the image. 
- format
- 
The detected barcode format. (For a full list of formats see the supported barcode format). 
- rawValue
- 
A string decoded from the barcode data. 
Exceptions
- TypeError
- 
Thrown if no parameter is specified or the typeis not that of anImageBitmapSource.
- SecurityError- DOMException
- 
Thrown if the imageBitmapSourcehas an origin and is not the same as the document's origin, or if theimageBitmapSourceis aHTMLCanvasElementand its origin-clean flag is set tofalse.
- InvalidStateError- DOMException
- 
Thrown if the imageBitmapSourceis anHTMLImageElementand is not fully decoded or decoding failed, or is anHTMLVideoElementand itsreadyStateisHAVE_NOTHINGorHAVE_METADATA.
Examples
This example uses the detect() method to detect the barcodes within the
given image. These are iterated over and the barcode data is logged to the console.
barcodeDetector
  .detect(imageEl)
  .then((barcodes) => {
    barcodes.forEach((barcode) => console.log(barcode.rawValue));
  })
  .catch((err) => {
    console.error(err);
  });
Specifications
| Specification | 
|---|
| Accelerated Shape Detection in Images> # dom-barcodedetector-detect> | 
Browser compatibility
Loading…