Skip to content
This repository was archived by the owner on Oct 11, 2024. It is now read-only.

Commit 0ae760e

Browse files
authored
Merge pull request #2 from Dynamsoft/_dev
v2.3.1
2 parents 7feab7a + 620c944 commit 0ae760e

3 files changed

Lines changed: 66 additions & 64 deletions

File tree

1.explore-the-features.html

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<head>
44
<meta charset="UTF-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6-
<script src="https://cdn.jsdelivr.net/npm/dynamsoft-camera-enhancer@2.1.0/dist/dce.js"></script>
6+
<script src="https://cdn.jsdelivr.net/npm/dynamsoft-camera-enhancer@2.3.1/dist/dce.js"></script>
77
<title>explore-the-features</title>
88
<style>
99
* {
@@ -21,7 +21,7 @@
2121
border: 0;
2222
}
2323

24-
#recognizerUI {
24+
#ui-container {
2525
position: absolute;
2626
top: 0;
2727
bottom: 40%;
@@ -96,7 +96,7 @@
9696
</style>
9797
</head>
9898
<body>
99-
<div id="recognizerUI"></div>
99+
<div id="ui-container"></div>
100100
<footer>
101101
<div class="btn-group">
102102
<button class="open-camera">open camera</button>
@@ -194,7 +194,6 @@
194194
let enhancer;
195195
let area;
196196
let overlay;
197-
let timer;
198197
let ctx;
199198
let regionLeft,regionRight,regionTop,regionBottom;
200199

@@ -235,12 +234,23 @@
235234
console.log('single frame acquired');
236235
console.log(callBackInfo);
237236
};
237+
const callbackFrameAddedToBuffer = () => {
238+
console.log('frame added to buffer');
239+
// get frame and add it to DOM
240+
const dceFrame = enhancer.getFrameFromBuffer();
241+
if(dceFrame) {
242+
let cvs = dceFrame.toCanvas();
243+
showFrame.innerHTML = '';
244+
showFrame.appendChild(cvs);
245+
}
246+
};
238247
enhancer.on("cameraOpen", callbackCameraOpen);
239248
enhancer.on("cameraClose", callbackCameraClose);
240249
enhancer.on("cameraChange", callbackCameraChange);
241250
enhancer.on("resolutionChange", callbackResolutionChange);
242251
enhancer.on("played", callbackPlayed);
243252
enhancer.on("singleFrameAcquired",callbackSingleFrameAcquired);
253+
enhancer.on("frameAddedToBuffer",callbackFrameAddedToBuffer);
244254
if(!enhancer.isOpen()) {
245255
setLineWidth.disabled = "disabled";
246256
setStrokeStyle.disabled = "disabled";
@@ -308,7 +318,7 @@
308318
return;
309319
} else {
310320
area = {x: 10, y:10, width:80, height:80};
311-
document.querySelector('#recognizerUI').appendChild(enhancer.getUIElement());
321+
document.querySelector('#ui-container').appendChild(enhancer.getUIElement());
312322
await enhancer.open(true);
313323
if(enhancer.getViewDecorator().type.length !== 0) {
314324
setLineWidth.disabled = "";
@@ -391,9 +401,12 @@
391401
if(!enhancer.isOpen()) {
392402
return;
393403
} else {
394-
let frameData = enhancer.getFrame();
395-
showFrame.innerHTML = '';
396-
showFrame.appendChild(frameData.canvas);
404+
let dceFrame = enhancer.getFrame();
405+
if(dceFrame) {
406+
let cvs = dceFrame.toCanvas();
407+
showFrame.innerHTML = '';
408+
showFrame.appendChild(cvs);
409+
}
397410
}
398411
})
399412

@@ -426,22 +439,11 @@
426439
switchFetchLoop.addEventListener('click', () => {
427440
if(enhancer.isFetchingLoopStarted()) {
428441
enhancer.stopFetchingLoop();
429-
clearInterval(timer);
430442
alert('stop fetching loop');
431443
} else {
432-
enhancer.startFetchingLoop();
433444
// Specify the interval to fetch a new frame.
434445
enhancer.loopInterval = 500;
435-
enhancer.maxNumberOfFramesInBuffer = 3
436-
timer = setInterval(() => {
437-
// get frame and add it to DOM
438-
const dceFrame = enhancer.getFrameFromBuffer();
439-
if(dceFrame !== null) {
440-
let cvs = dceFrame.canvas;
441-
showFrame.innerHTML = '';
442-
showFrame.appendChild(cvs);
443-
}
444-
},1000)
446+
enhancer.startFetchingLoop();
445447
}
446448
})
447449
</script>

2.customize-the-ui/index.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@
44
<meta charset="UTF-8" />
55
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
66
<title>get_dce</title>
7-
<script src="https://cdn.jsdelivr.net/npm/dynamsoft-camera-enhancer@2.1.0/dist/dce.js"></script>
7+
<script src="https://cdn.jsdelivr.net/npm/dynamsoft-camera-enhancer@2.3.1/dist/dce.js"></script>
88
</head>
99
<body>
1010
<script>
1111
let cameraEnhancer;
1212
(async()=>{
1313
Dynamsoft.DCE.CameraEnhancer.defaultUIElementURL = "./ui.html";
1414
cameraEnhancer = await Dynamsoft.DCE.CameraEnhancer.createInstance();
15+
cameraEnhancer.setVideoFit("cover");
1516
await cameraEnhancer.open(true);
1617
})();
1718
</script>

0 commit comments

Comments
 (0)