Skip to content

Commit 732b5c2

Browse files
committed
update filter
1 parent 442a489 commit 732b5c2

26 files changed

Lines changed: 421 additions & 480 deletions

File tree

hello-world/angular/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -183,16 +183,16 @@ export class VideoCaptureComponent {
183183
// Filter out unchecked and duplicate results.
184184
const filter = new MultiFrameResultCrossFilter();
185185
filter.enableResultCrossVerification(
186-
EnumCapturedResultItemType.CRIT_BARCODE,
186+
"barcode",
187187
true
188188
); // Filter out unchecked barcodes.
189189
// Filter out duplicate barcodes within 3 seconds.
190190
filter.enableResultDeduplication(
191-
EnumCapturedResultItemType.CRIT_BARCODE,
191+
"barcode",
192192
true
193193
);
194194
filter.setDuplicateForgetTime(
195-
EnumCapturedResultItemType.CRIT_BARCODE,
195+
"barcode",
196196
3000
197197
);
198198
await router.addResultFilter(filter);

hello-world/angular/src/app/video-capture/video-capture.component.ts

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,11 @@ export class VideoCaptureComponent {
3939
const cameraView = await CameraView.createInstance();
4040
const cameraEnhancer = await CameraEnhancer.createInstance(cameraView);
4141
this.uiContainer!.nativeElement.append(cameraView.getUIElement()); // Get default UI and append it to DOM.
42-
42+
4343
// Create a `CaptureVisionRouter` instance and set `CameraEnhancer` instance as its image source.
4444
const router = await CaptureVisionRouter.createInstance();
4545
router.setInput(cameraEnhancer);
46-
46+
4747
// Define a callback for results.
4848
const resultReceiver = new CapturedResultReceiver();
4949
resultReceiver.onDecodedBarcodesReceived = (result: DecodedBarcodesResult) => {
@@ -63,19 +63,11 @@ export class VideoCaptureComponent {
6363

6464
// Filter out unchecked and duplicate results.
6565
const filter = new MultiFrameResultCrossFilter();
66-
filter.enableResultCrossVerification(
67-
EnumCapturedResultItemType.CRIT_BARCODE,
68-
true
69-
); // Filter out unchecked barcodes.
66+
// Filter out unchecked barcodes.
67+
filter.enableResultCrossVerification("barcode", true);
7068
// Filter out duplicate barcodes within 3 seconds.
71-
filter.enableResultDeduplication(
72-
EnumCapturedResultItemType.CRIT_BARCODE,
73-
true
74-
);
75-
filter.setDuplicateForgetTime(
76-
EnumCapturedResultItemType.CRIT_BARCODE,
77-
3000
78-
);
69+
filter.enableResultDeduplication("barcode", true);
70+
filter.setDuplicateForgetTime("barcode", 3000);
7971
await router.addResultFilter(filter);
8072

8173
// Open camera and start scanning single barcode.

hello-world/electron/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -174,16 +174,16 @@ Dynamsoft.Core.CoreModule.engineResourcePaths = {
174174
// Filter out unchecked and duplicate results.
175175
const filter = new Dynamsoft.Utility.MultiFrameResultCrossFilter();
176176
filter.enableResultCrossVerification(
177-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
177+
"barcode",
178178
true
179179
); // Filter out unchecked barcodes.
180180
// Filter out duplicate barcodes within 3 seconds.
181181
filter.enableResultDeduplication(
182-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
182+
"barcode",
183183
true
184184
);
185185
filter.setDuplicateForgetTime(
186-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
186+
"barcode",
187187
3000
188188
);
189189
await router.addResultFilter(filter);

hello-world/electron/action.js

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -56,20 +56,12 @@ Dynamsoft.Core.CoreModule.engineResourcePaths = {
5656
router.addResultReceiver(resultReceiver);
5757

5858
// Filter out unchecked and duplicate results.
59-
const filter = new Dynamsoft.Utility.MultiFrameResultCrossFilter();
60-
filter.enableResultCrossVerification(
61-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
62-
true
63-
); // Filter out unchecked barcodes.
59+
const filter = new MultiFrameResultCrossFilter();
60+
// Filter out unchecked barcodes.
61+
filter.enableResultCrossVerification("barcode", true);
6462
// Filter out duplicate barcodes within 3 seconds.
65-
filter.enableResultDeduplication(
66-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
67-
true
68-
);
69-
filter.setDuplicateForgetTime(
70-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
71-
3000
72-
);
63+
filter.enableResultDeduplication("barcode", true);
64+
filter.setDuplicateForgetTime("barcode", 3000);
7365
await router.addResultFilter(filter);
7466

7567
// Open camera and start scanning single barcode.

hello-world/es6.html

Lines changed: 108 additions & 121 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,31 @@
11
<!DOCTYPE html>
22
<html lang="en">
3-
<head>
4-
<meta charset="utf-8" />
5-
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
6-
<meta
7-
name="description"
8-
content="Quickly read barcodes with Dynamsoft Barcode Reader from a live camera stream."
9-
/>
10-
<meta name="keywords" content="barcode, camera, es6" />
11-
<link
12-
rel="canonical"
13-
href="https://demo.dynamsoft.com/Samples/DBR/JS/hello-world/es6.html"
14-
/>
15-
<title>
16-
Dynamsoft Barcode Reader Sample - Hello World for ES6 (Decode via Camera)
17-
</title>
18-
</head>
193

20-
<body>
21-
<h1>Hello World for ES6 (Decode via Camera)</h1>
22-
<div id="div-ui-container" style="width: 100%; height: 80vh"></div>
23-
Results:
24-
<br>
25-
<div id="div-results-container" style="width: 100%; height: 10vh; overflow: auto;"></div>
26-
<script>
27-
if (location.protocol === "file:") {
28-
const message = `The page is opened via file:// and our SDKs may not work properly. Please open the page via https:// or host it on "http://localhost/".`;
29-
console.warn(message);
30-
alert(message);
31-
}
32-
</script>
33-
<script type="importmap">
4+
<head>
5+
<meta charset="utf-8" />
6+
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
7+
<meta name="description" content="Quickly read barcodes with Dynamsoft Barcode Reader from a live camera stream." />
8+
<meta name="keywords" content="barcode, camera, es6" />
9+
<link rel="canonical" href="https://demo.dynamsoft.com/Samples/DBR/JS/hello-world/es6.html" />
10+
<title>
11+
Dynamsoft Barcode Reader Sample - Hello World for ES6 (Decode via Camera)
12+
</title>
13+
</head>
14+
15+
<body>
16+
<h1>Hello World for ES6 (Decode via Camera)</h1>
17+
<div id="div-ui-container" style="width: 100%; height: 80vh"></div>
18+
Results:
19+
<br>
20+
<div id="div-results-container" style="width: 100%; height: 10vh; overflow: auto;"></div>
21+
<script>
22+
if (location.protocol === "file:") {
23+
const message = `The page is opened via file:// and our SDKs may not work properly. Please open the page via https:// or host it on "http://localhost/".`;
24+
console.warn(message);
25+
alert(message);
26+
}
27+
</script>
28+
<script type="importmap">
3429
{
3530
"imports": {
3631
"dynamsoft-core": "https://cdn.jsdelivr.net/npm/dynamsoft-core@3.2.10/dist/core.mjs",
@@ -42,103 +37,95 @@ <h1>Hello World for ES6 (Decode via Camera)</h1>
4237
}
4338
}
4439
</script>
45-
<script type="module">
46-
import { CoreModule, EnumCapturedResultItemType } from "dynamsoft-core";
47-
import { LicenseManager } from "dynamsoft-license";
48-
import { MultiFrameResultCrossFilter } from "dynamsoft-utility";
49-
import { BarcodeReaderModule } from "dynamsoft-barcode-reader";
50-
import {
51-
CaptureVisionRouter,
52-
CapturedResultReceiver,
53-
} from "dynamsoft-capture-vision-router";
54-
import {
55-
CameraView,
56-
CameraEnhancer,
57-
} from "dynamsoft-camera-enhancer";
40+
<script type="module">
41+
import { CoreModule, EnumCapturedResultItemType } from "dynamsoft-core";
42+
import { LicenseManager } from "dynamsoft-license";
43+
import { MultiFrameResultCrossFilter } from "dynamsoft-utility";
44+
import { BarcodeReaderModule } from "dynamsoft-barcode-reader";
45+
import {
46+
CaptureVisionRouter,
47+
CapturedResultReceiver,
48+
} from "dynamsoft-capture-vision-router";
49+
import {
50+
CameraView,
51+
CameraEnhancer,
52+
} from "dynamsoft-camera-enhancer";
5853

59-
/** LICENSE ALERT - README
60-
* To use the library, you need to first specify a license key using the API "initLicense()" as shown below.
61-
*/
54+
/** LICENSE ALERT - README
55+
* To use the library, you need to first specify a license key using the API "initLicense()" as shown below.
56+
*/
6257

63-
LicenseManager.initLicense(
64-
"DLS2eyJvcmdhbml6YXRpb25JRCI6IjIwMDAwMSJ9"
65-
);
58+
LicenseManager.initLicense(
59+
"DLS2eyJvcmdhbml6YXRpb25JRCI6IjIwMDAwMSJ9"
60+
);
6661

67-
/**
68-
* You can visit https://www.dynamsoft.com/customer/license/trialLicense?utm_source=github&product=dbr&package=js to get your own trial license good for 30 days.
69-
* Note that if you downloaded this sample from Dynamsoft while logged in, the above license key may already be your own 30-day trial license.
70-
* For more information, see https://www.dynamsoft.com/barcode-reader/programming/javascript/user-guide/?ver=10.2.10&utm_source=github#specify-the-license or contact support@dynamsoft.com.
71-
* LICENSE ALERT - THE END
72-
*/
62+
/**
63+
* You can visit https://www.dynamsoft.com/customer/license/trialLicense?utm_source=github&product=dbr&package=js to get your own trial license good for 30 days.
64+
* Note that if you downloaded this sample from Dynamsoft while logged in, the above license key may already be your own 30-day trial license.
65+
* For more information, see https://www.dynamsoft.com/barcode-reader/programming/javascript/user-guide/?ver=10.2.10&utm_source=github#specify-the-license or contact support@dynamsoft.com.
66+
* LICENSE ALERT - THE END
67+
*/
7368

74-
CoreModule.engineResourcePaths = {
75-
std: "https://cdn.jsdelivr.net/npm/dynamsoft-capture-vision-std@1.2.0/dist/",
76-
dip: "https://cdn.jsdelivr.net/npm/dynamsoft-image-processing@2.2.10/dist/",
77-
core: "https://cdn.jsdelivr.net/npm/dynamsoft-core@3.2.10/dist/",
78-
license: "https://cdn.jsdelivr.net/npm/dynamsoft-license@3.2.10/dist/",
79-
cvr: "https://cdn.jsdelivr.net/npm/dynamsoft-capture-vision-router@2.2.10/dist/",
80-
dbr: "https://cdn.jsdelivr.net/npm/dynamsoft-barcode-reader@10.2.10/dist/",
81-
dce: "https://cdn.jsdelivr.net/npm/dynamsoft-camera-enhancer@4.0.2/dist/"
82-
};
83-
(async function () {
84-
try {
85-
// Create a `CameraEnhancer` instance for camera control and a `CameraView` instance for UI control.
86-
const cameraView = await CameraView.createInstance();
87-
const cameraEnhancer = await CameraEnhancer.createInstance(
88-
cameraView
89-
);
90-
document
91-
.querySelector("#div-ui-container")
92-
.append(cameraView.getUIElement()); // Get default UI and append it to DOM.
69+
CoreModule.engineResourcePaths = {
70+
std: "https://cdn.jsdelivr.net/npm/dynamsoft-capture-vision-std@1.2.0/dist/",
71+
dip: "https://cdn.jsdelivr.net/npm/dynamsoft-image-processing@2.2.10/dist/",
72+
core: "https://cdn.jsdelivr.net/npm/dynamsoft-core@3.2.10/dist/",
73+
license: "https://cdn.jsdelivr.net/npm/dynamsoft-license@3.2.10/dist/",
74+
cvr: "https://cdn.jsdelivr.net/npm/dynamsoft-capture-vision-router@2.2.10/dist/",
75+
dbr: "https://cdn.jsdelivr.net/npm/dynamsoft-barcode-reader@10.2.10/dist/",
76+
dce: "https://cdn.jsdelivr.net/npm/dynamsoft-camera-enhancer@4.0.2/dist/"
77+
};
78+
(async function () {
79+
try {
80+
// Create a `CameraEnhancer` instance for camera control and a `CameraView` instance for UI control.
81+
const cameraView = await CameraView.createInstance();
82+
const cameraEnhancer = await CameraEnhancer.createInstance(
83+
cameraView
84+
);
85+
document
86+
.querySelector("#div-ui-container")
87+
.append(cameraView.getUIElement()); // Get default UI and append it to DOM.
9388

94-
// Create a `CaptureVisionRouter` instance and set `CameraEnhancer` instance as its image source.
95-
const router = await CaptureVisionRouter.createInstance();
96-
router.setInput(cameraEnhancer);
89+
// Create a `CaptureVisionRouter` instance and set `CameraEnhancer` instance as its image source.
90+
const router = await CaptureVisionRouter.createInstance();
91+
router.setInput(cameraEnhancer);
9792

98-
// Define a callback for results.
99-
const resultReceiver = new CapturedResultReceiver();
100-
resultReceiver.onDecodedBarcodesReceived = (result) => {
101-
if (!result.barcodeResultItems.length) return;
93+
// Define a callback for results.
94+
const resultReceiver = new CapturedResultReceiver();
95+
resultReceiver.onDecodedBarcodesReceived = (result) => {
96+
if (!result.barcodeResultItems.length) return;
10297

103-
const resultsContainer = document.querySelector("#div-results-container");
104-
resultsContainer.textContent = '';
105-
console.log(result);
106-
for (let item of result.barcodeResultItems) {
107-
resultsContainer.append(
108-
`${item.formatString}: ${item.text}`,
109-
document.createElement('br'),
110-
document.createElement('hr'),
111-
);
112-
}
113-
};
114-
router.addResultReceiver(resultReceiver);
98+
const resultsContainer = document.querySelector("#div-results-container");
99+
resultsContainer.textContent = '';
100+
console.log(result);
101+
for (let item of result.barcodeResultItems) {
102+
resultsContainer.append(
103+
`${item.formatString}: ${item.text}`,
104+
document.createElement('br'),
105+
document.createElement('hr'),
106+
);
107+
}
108+
};
109+
router.addResultReceiver(resultReceiver);
115110

116-
// Filter out unchecked and duplicate results.
117-
const filter = new MultiFrameResultCrossFilter();
118-
filter.enableResultCrossVerification(
119-
EnumCapturedResultItemType.CRIT_BARCODE,
120-
true
121-
); // Filter out unchecked barcodes.
122-
// Filter out duplicate barcodes within 3 seconds.
123-
filter.enableResultDeduplication(
124-
EnumCapturedResultItemType.CRIT_BARCODE,
125-
true
126-
);
127-
filter.setDuplicateForgetTime(
128-
EnumCapturedResultItemType.CRIT_BARCODE,
129-
3000
130-
);
131-
await router.addResultFilter(filter);
111+
// Filter out unchecked and duplicate results.
112+
const filter = new Dynamsoft.Utility.MultiFrameResultCrossFilter();
113+
filter.enableResultCrossVerification("barcode", true); // Filter out unchecked barcodes.
114+
// Filter out duplicate barcodes within 3 seconds.
115+
filter.enableResultDeduplication("barcode", true);
116+
filter.setDuplicateForgetTime("barcode", 3000);
117+
await router.addResultFilter(filter);
132118

133-
// Open camera and start scanning single barcode.
134-
await cameraEnhancer.open();
135-
await router.startCapturing("ReadSingleBarcode");
136-
} catch (ex) {
137-
let errMsg = ex.message || ex;
138-
console.error(errMsg);
139-
alert(errMsg);
140-
}
141-
})();
142-
</script>
143-
</body>
144-
</html>
119+
// Open camera and start scanning single barcode.
120+
await cameraEnhancer.open();
121+
await router.startCapturing("ReadSingleBarcode");
122+
} catch (ex) {
123+
let errMsg = ex.message || ex;
124+
console.error(errMsg);
125+
alert(errMsg);
126+
}
127+
})();
128+
</script>
129+
</body>
130+
131+
</html>

hello-world/hello-world.html

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -87,19 +87,10 @@ <h1>Hello World (Decode via Camera)</h1>
8787

8888
// Filter out unchecked and duplicate results.
8989
const filter = new Dynamsoft.Utility.MultiFrameResultCrossFilter();
90-
filter.enableResultCrossVerification(
91-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
92-
true
93-
); // Filter out unchecked barcodes.
90+
filter.enableResultCrossVerification("barcode", true); // Filter out unchecked barcodes.
9491
// Filter out duplicate barcodes within 3 seconds.
95-
filter.enableResultDeduplication(
96-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
97-
true
98-
);
99-
filter.setDuplicateForgetTime(
100-
Dynamsoft.Core.EnumCapturedResultItemType.CRIT_BARCODE,
101-
3000
102-
);
92+
filter.enableResultDeduplication("barcode", true);
93+
filter.setDuplicateForgetTime("barcode", 3000);
10394
await router.addResultFilter(filter);
10495

10596
// Open camera and start scanning single barcode.

hello-world/next/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,16 +150,16 @@ function VideoCapture() {
150150
// Filter out unchecked and duplicate results.
151151
const filter = new MultiFrameResultCrossFilter();
152152
filter.enableResultCrossVerification(
153-
EnumCapturedResultItemType.CRIT_BARCODE,
153+
"barcode",
154154
true
155155
); // Filter out unchecked barcodes.
156156
// Filter out duplicate barcodes within 3 seconds.
157157
filter.enableResultDeduplication(
158-
EnumCapturedResultItemType.CRIT_BARCODE,
158+
"barcode",
159159
true
160160
);
161161
filter.setDuplicateForgetTime(
162-
EnumCapturedResultItemType.CRIT_BARCODE,
162+
"barcode",
163163
3000
164164
);
165165
await router.addResultFilter(filter);

0 commit comments

Comments
 (0)