VnOCR / static /js /other.js
firetac's picture
Update static/js/other.js
de5a7cc verified
raw
history blame
2.55 kB
let loadingInterval;
function handlePaste(event) {
const items = (event.clipboardData || event.originalEvent.clipboardData).items;
for (const item of items) {
if (item.type.indexOf("image") === 0) {
const blob = item.getAsFile();
const reader = new FileReader();
reader.onload = function(event) {
const img = document.getElementById("pasted-image");
img.src = event.target.result;
img.style.display = "block";
};
reader.readAsDataURL(blob);
}
}
}
function saveImage() {
const img = document.getElementById("pasted-image");
if (img.src) {
fetch('/save_pasted_image', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ image: img.src })
})
.then(response => response.json())
.then(data => {
console.log(data.message);
alert("Image saved successfully!");
const capturedImage = document.getElementById('captured-image');
capturedImage.src = img.src;
capturedImage.style.display = 'block';
})
.catch(console.error);
} else {
alert("No image to save!");
}
}
function performOCR() {
clearOCRResult();
showLoading();
disableButton();
fetch('/imgocr', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(data => {
document.getElementById('ocr-result').innerText = data.result;
hideLoading();
enableButton();
})
.catch(error => {
console.error(error);
hideLoading();
enableButton();
});
}
function showLoading() {
const loadingElement = document.getElementById('loading');
loadingElement.style.display = 'block';
}
function hideLoading() {
const loadingElement = document.getElementById('loading');
loadingElement.style.display = 'none';
}
function clearOCRResult() {
document.getElementById('ocr-result').innerText = '';
}
function disableButton() {
const button = document.querySelector('button[onclick="performOCR()"]');
button.disabled = true;
button.style.backgroundColor = '#cccccc';
}
function enableButton() {
const button = document.querySelector('button[onclick="performOCR()"]');
button.disabled = false;
button.style.backgroundColor = '#007bff';
}