Skip to content

Commit 4c6c9ef

Browse files
committed
Add rough progress indicator to rerunOCR, refs #6
1 parent 17f46e1 commit 4c6c9ef

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

ocr.html

+10-3
Original file line numberDiff line numberDiff line change
@@ -311,26 +311,33 @@ <h2>Pages</h2>
311311
}
312312

313313
async function rerunOCR() {
314-
const worker = await Tesseract.createWorker(languageSelect.value);
315314
const textareas = document.querySelectorAll('.image-container textarea');
316315
const images = document.querySelectorAll('.image-container img');
317316

318317
// Blank all the textareas
319318
Array.from(textareas).forEach(ta => ta.value = '');
320319
showFullDocument();
321320

322-
for (let i = 0; i < images.length; i++) {
321+
const numImages = images.length;
322+
let done = 0;
323+
dropzone.innerText = `Processing ${numImages} image${numImages > 1 ? 's' : ''}`;
324+
325+
const worker = await Tesseract.createWorker(languageSelect.value);
326+
327+
for (let i = 0; i < numImages; i++) {
323328
const imageURL = images[i].src;
324329
const ta = textareas[i];
325330
ta.placeholder = 'OCRing image...';
326331
const { text } = await ocrImage(worker, imageURL);
327332
setTextarea(ta, text);
328333
showFullDocument();
334+
done += 1;
335+
dropzone.innerText = `Done ${done} of ${numImages}`;
329336
}
330-
331337
await worker.terminate();
332338
}
333339

340+
334341
document.addEventListener('paste', (event) => {
335342
const items = (event.clipboardData || event.originalEvent.clipboardData).items;
336343
const images = Array.from(items).filter(item => item.type.indexOf('image') !== -1);

0 commit comments

Comments
 (0)