capacitor-plugin-dynamsoft-barcode-reader
A capacitor plugin for Dynamsoft Barcode Reader and Dynamsoft Camera Enhancer.
Supported Platforms
- Android
- iOS
- Web
Install
npm install capacitor-plugin-dynamsoft-barcode-reader
npx cap sync
Or install from a local folder
npm install <path-to-the-project>
npx cap sync
Demo
- https://github.com/xulihang/Ionic-React-QR-Code-Scanner
- https://github.com/xulihang/capacitor-plugin-dynamsoft-barcode-reader/tree/main/example
- https://github.com/xulihang/capacitor-qr-code-scanner
API
initLicense(...)
initialize(...)
initRuntimeSettingsWithString(...)
toggleTorch(...)
startScan()
stopScan()
resumeScan()
pauseScan()
stopScan()
readImage(...)
requestCameraPermission()
getAllCameras()
getSelectedCamera()
selectCamera(...)
getResolution()
setResolution(...)
setScanRegion(...)
setZoom(...)
setFocus(...)
setInterval(...)
setLayout(...)
destroy()
setEngineResourcePath(...)
setDefaultUIElementURL(...)
addListener(...)
addListener(...)
removeAllListeners()
- Interfaces
initLicense(...)
initLicense(options: { license: string; }) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
{ license: string; } |
Returns: Promise<{ success?: boolean; message?: string; }>
initialize(...)
initialize(options?: Options | undefined) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
Options |
Returns: Promise<{ success?: boolean; message?: string; }>
initRuntimeSettingsWithString(...)
initRuntimeSettingsWithString(options: { template: string; }) => Promise<void>
Param | Type |
---|---|
options |
{ template: string; } |
toggleTorch(...)
toggleTorch(options: { on: boolean; }) => Promise<void>
Param | Type |
---|---|
options |
{ on: boolean; } |
startScan()
startScan() => Promise<void>
stopScan()
stopScan() => Promise<void>
resumeScan()
resumeScan() => Promise<void>
pauseScan()
pauseScan() => Promise<void>
stopScan()
stopScan() => Promise<void>
readImage(...)
readImage(options: { base64: string; }) => Promise<{ results: TextResult[]; }>
Param | Type |
---|---|
options |
{ base64: string; } |
Returns: Promise<{ results: TextResult[]; }>
requestCameraPermission()
requestCameraPermission() => Promise<void>
getAllCameras()
getAllCameras() => Promise<{ cameras?: string[]; message?: string; }>
Returns: Promise<{ cameras?: string[]; message?: string; }>
getSelectedCamera()
getSelectedCamera() => Promise<{ selectedCamera?: string; message?: string; }>
Returns: Promise<{ selectedCamera?: string; message?: string; }>
selectCamera(...)
selectCamera(options: { cameraID: string; }) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
{ cameraID: string; } |
Returns: Promise<{ success?: boolean; message?: string; }>
getResolution()
getResolution() => Promise<{ resolution?: string; message?: string; }>
Returns: Promise<{ resolution?: string; message?: string; }>
setResolution(...)
setResolution(options: { resolution: number; }) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
{ resolution: number; } |
Returns: Promise<{ success?: boolean; message?: string; }>
setScanRegion(...)
setScanRegion(options: ScanRegion) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
ScanRegion |
Returns: Promise<{ success?: boolean; message?: string; }>
setZoom(...)
setZoom(options: { factor: number; }) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
{ factor: number; } |
Returns: Promise<{ success?: boolean; message?: string; }>
setFocus(...)
setFocus(options: { x: number; y: number; }) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
{ x: number; y: number; } |
Returns: Promise<{ success?: boolean; message?: string; }>
setInterval(...)
setInterval(options: { interval: number; }) => Promise<void>
Param | Type |
---|---|
options |
{ interval: number; } |
setLayout(...)
setLayout(options: { top: string; left: string; width: string; height: string; }) => Promise<{ success?: boolean; message?: string; }>
Param | Type |
---|---|
options |
{ top: string; left: string; width: string; height: string; } |
Returns: Promise<{ success?: boolean; message?: string; }>
destroy()
destroy() => Promise<void>
setEngineResourcePath(...)
setEngineResourcePath(path: string) => Promise<void>
Param | Type |
---|---|
path |
string |
setDefaultUIElementURL(...)
setDefaultUIElementURL(url: string) => Promise<void>
Param | Type |
---|---|
url |
string |
addListener(...)
addListener(eventName: 'onFrameRead', listenerFunc: onFrameReadListener) => Promise<PluginListenerHandle> & PluginListenerHandle
Param | Type |
---|---|
eventName |
"onFrameRead" |
listenerFunc |
(result: ScanResult) => void |
Returns: Promise<PluginListenerHandle> & PluginListenerHandle
addListener(...)
addListener(eventName: 'onPlayed', listenerFunc: onPlayedListener) => Promise<PluginListenerHandle> & PluginListenerHandle
Param | Type |
---|---|
eventName |
"onPlayed" |
listenerFunc |
(result: { resolution: string; }) => void |
Returns: Promise<PluginListenerHandle> & PluginListenerHandle
removeAllListeners()
removeAllListeners() => Promise<void>
Interfaces
Options
Prop | Type |
---|---|
license |
string |
dceLicense |
string |
TextResult
Prop | Type |
---|---|
barcodeText |
string |
barcodeFormat |
string |
barcodeBytesBase64 |
string |
x1 |
number |
y1 |
number |
x2 |
number |
y2 |
number |
x3 |
number |
y3 |
number |
x4 |
number |
y4 |
number |
ScanRegion
measuredByPercentage: 0 in pixel, 1 in percent
Prop | Type |
---|---|
left |
number |
top |
number |
right |
number |
bottom |
number |
measuredByPercentage |
number |
PluginListenerHandle
Prop | Type |
---|---|
remove |
() => Promise<void> |
Supported Barcode Symbologies
- Code 11
- Code 39
- Code 93
- Code 128
- Codabar
- EAN-8
- EAN-13
- UPC-A
- UPC-E
- Interleaved 2 of 5 (ITF)
- Industrial 2 of 5 (Code 2 of 5 Industry, Standard 2 of 5, Code 2 of 5)
- ITF-14
- QRCode
- DataMatrix
- PDF417
- GS1 DataBar
- Maxicode
- Micro PDF417
- Micro QR
- PatchCode
- GS1 Composite
- Postal Code
- Dot Code
- Pharmacode
Version
For versions >= 1.3.1, Dynamsoft Barcode Reader 9 is used.
For version 1.3.0, Dynamsoft Barcode Reader Mobile 9 and Dynamsoft Barcode Reader JavaScript 8.8.7 are used.
For versions < 1.3.0, Dynamsoft Barcode Reader 8 is used.